Developer ID
Os desenvolvedores podem obter um certificado Developer ID para softwares e aplicativos baixados fora da Mac App Store e enviá-los para autenticação pela Apple. Ao assinar um software digitalmente com um Developer ID exclusivo e incluir um tíquete de autenticação da Apple, o Gatekeeper poderá confirmar que o software não é um malware conhecido e que não foi adulterado. Os aplicativos também podem se beneficiar de recursos avançados como o CloudKit e as notificações por push.
Preparar apps assinados com Developer ID
Para distribuir software do Mac com Developer ID, você precisará ter a assinatura do Apple Developer Program ou Apple Developer Enterprise Program, obter um certificado Developer ID e enviar o app para ser autenticado pela Apple. Também será necessário criar um perfil de provisionamento do Developer ID para apps que contam com recursos avançados (Inglês) como o CloudKit.
Gerenciar a expiração do certificado e do perfil de provisionamento do Developer ID
Os apps assinados com um Developer ID são avaliados pelo GateKeeper quando instalados pelo cliente. Se o seu aplicativo usar um perfil de provisionamento do Developer ID para oferecer suporte a recursos avançados, esse perfil também será avaliado no momento da instalação do app e cada vez que for aberto. É bom entender como a expiração do certificado Developer ID e o perfil de provisionamento do Developer ID afetam você e os usuários do seu app.
Os certificados Developer ID são válidos por 5 anos a partir da data em que foram criados, e os perfis de provisionamento do Developer ID gerados antes de 22 de fevereiro do 2017* são válidos até a expiração do certificado Developer ID.
- Para apps que não utilizam um perfil de provisionamento do Developer ID
O Gatekeeper avaliará a validade do certificado Developer ID no momento da instalação do app. Contanto que o certificado Developer ID seja válido no momento da compilação do app, os usuários podem baixar e executar o app, mesmo depois da data de expiração do certificado. No entanto, você precisará de um novo certificado para assinar atualizações e novos aplicativos. - Para apps que utilizam recursos avançados com um perfil de provisionamento de Developer ID
O Gatekeeper avaliará a validade do certificado de Developer ID no momento da instalação do aplicativo e avaliará a validade do perfil de provisionamento do Developer ID cada vez que o app for aberto. Contanto que o certificado Developer ID seja válido no momento da compilação do app, os usuários podem baixar e executar o app, mesmo depois da data de expiração do certificado. No entanto, caso o perfil de provisionamento do Developer ID expire, o app não será mais aberto. - Para pacotes de instalação assinados com um certificado de pacote de instalação Developer ID
O Gatekeeper avaliará a validade do certificado do pacote de instalação Developer ID quando o pacote de instalação for executado. O pacote de instalação será aberto apenas se o certificado de pacote de instalação Developer ID for válido. Os pacotes de instalação assinados com um certificado de pacote de instalação Developer ID devem ser assinados novamente com um certificado de pacote de instalação Developer ID válido para serem executados.
Os apps Developer ID assinados com um certificado revogado não poderão mais ser instalados e, caso já estejam instalados, não poderão ser abertos.
Notas técnicas
- Sobre o Gatekeeper
- Tudo sobre a assinatura de código no macOS (Inglês)
- Autenticar software do macOS antes da distribuição (Inglês)
- Personalizar o fluxo de trabalho de autenticação (Inglês)
- Resolver problemas comuns de autenticação (Inglês)
- Solução de problemas em direitos (Inglês)