PatrocinarEntrarEnviar

← Todas as ferramentas

Explicador de entitlements

Cole o que o codesign imprime, ou o seu arquivo .entitlements. Ele é lido aqui mesmo, nesta página, e nada é enviado para lugar nenhum.

Explicador de entitlements

Teste um exemplo:

O que faz

Entitlements são as permissões com as quais o seu app de Mac é assinado: se ele roda no App Sandbox, a quais pastas e dispositivos ele tem acesso, quais proteções do hardened runtime ele desliga e quais serviços da Apple ele usa. Ficam no seu arquivo .entitlements e vão parar dentro da assinatura. Esta ferramenta lê o texto que você cola, encontra cada entitlement e o valor dele, e diz em palavras simples o que ele permite. Ela coloca primeiro os que vão impedir a notarização, depois os que o App Review ou um usuário cuidadoso vão perguntar, e depois os comuns.

Comandos para rodar

codesign -d --entitlements - YourApp.app
codesign -d --entitlements - --xml YourApp.app

Rode no build que você distribui. Um build Debug do Xcode costuma trazer com.apple.security.get-task-allow, que um build Release não tem. Para verificar um helper ou uma extensão, aponte o comando para esse bundle.

O que cada resultado significa

MarcaO que significa
CorrigirA notarização o rejeita, ou o macOS não roda um app de terceiros que o tenha.
AparênciaUma exceção de hardened runtime, uma exceção de sandbox, um sandbox desligado ou uma configuração de teste. Permitido, mas só mantenha se o app precisar.
OKO App Sandbox está ligado.
NotaUma permissão comum. Confira se o app realmente a usa.

Fontes: Apple Developer, Entitlements, App Sandbox, Hardened Runtime e Resolving common notarization issues, todas lidas em 6 de novembro de 2026.

Como funciona

São algumas regras simples de texto rodando nesta página. Ela lê o XML que um arquivo .entitlements ou o codesign --xml traz, e as linhas [Key] e [Value] entre colchetes que o codesign imprime no macOS recente. Se você colar só os nomes das chaves, ela explica essas. Ela conhece 50 entitlements comuns. Qualquer outro ela marca como fora da lista, em vez de adivinhar. Ela não consegue dizer se o hardened runtime está ligado, porque isso é uma flag de assinatura e não um entitlement: procure flags=0x10000(runtime) no que o codesign -dv imprime.

Perguntas

O que são entitlements em um Mac?

São permissões escritas na assinatura de código de um app. Dizem se o app roda no App Sandbox, quais arquivos, dispositivos e serviços da Apple ele pode usar, e quais proteções do hardened runtime ele desliga.

Como vejo os entitlements de um app?

Rode codesign -d --entitlements - seguido do caminho do app no Terminal. Adicione --xml para obter a mesma lista como uma property list.

Por que meu app foi rejeitado pela notarização por causa do get-task-allow?

Esse entitlement permite que depuradores se conectem, e o Xcode o adiciona aos builds Debug. Arquive um build Release, ou remova-o dos entitlements com os quais você assina, e envie de novo.

Um app de Mac precisa do App Sandbox?

Só para a Mac App Store, que o exige. Um app que você vende por conta própria com Developer ID pode rodar sem ele, embora ainda precise do hardened runtime para a notarização.

O que eu colo é enviado para algum lugar?

Não. O texto é lido nesta página e nada é enviado.

Relacionados