Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
O Biblioteca do Microsoft Authenticator (MSAL) para iOS e macOS é um SDK de autenticação que pode ser usado para integrar perfeitamente a autenticação em seus aplicativos usando o OAuth2 e OpenID Connect padrão do setor. Ele permite que você conecte usuários ou aplicativos com as identidades da Microsoft. Essas identidades incluem Microsoft Entra ID contas corporativas e de estudante, contas de Microsoft pessoais, contas sociais e contas de clientes.
Usando a MSAL para iOS e macOS, você pode adquirir tokens de segurança do plataforma de identidade da Microsoft para autenticar usuários e acessar APIs Web seguras para seus aplicativos. A biblioteca dá suporte a vários cenários de autenticação, como SSO (logon único), Acesso Condicional e autenticação agenciada.
Suporte à autenticação nativa no MSAL
O MSAL iOS fornece APIs de autenticação nativas que permitem aos aplicativos implementar uma experiência nativa com fluxos personalizáveis de ponta a ponta em seus aplicativos móveis. Com a autenticação nativa, os usuários são guiados por uma experiência rica e nativa de cadastro e login, voltada primeiro para dispositivos móveis, sem sair do aplicativo. O recurso de autenticação nativa só está disponível para aplicativos móveis no ID Externa para Clientes. Não há suporte para macOS. É recomendável sempre usar a versão mais recente do SDK.
Introdução à documentação conceitual do MSAL para iOS e macOS
A documentação da MSAL aborda padrões comuns, práticas recomendadas para tratamento de erros e depuração, funcionalidades adicionais da biblioteca (como registro em logs e telemetria) e quaisquer bugs ativos ou problemas comuns com mitigações conhecidas. Se você estiver procurando mais ajuda para começar a usar o Microsoft Entra ID e as Contas Microsoft, confira a documentação da plataforma de identidade da Microsoft. Se você estiver procurando mais informações sobre a API do Microsoft Graph, confira a documentação do Microsoft Graph. Para usar efetivamente o MSAL para iOS e macOS e proteger seus aplicativos, é importante se familiarizar com os seguintes conceitos:
- Conheça as diferenças entre a MSAL para iOS e macOS
- Registrar seu aplicativo com Microsoft Entra
- Instale a MSAL para iOS e macOS e configure seu projeto para usar a biblioteca
- Adquirir tokens para acessar uma API protegida
Para usar o MSAL iOS e macOS em seu aplicativo, você precisa registrar seu aplicativo no centro de administração do Microsoft Entra e configurar seu projeto. Como o SDK dá suporte a experiências de autenticação nativas e delegadas pelo navegador, siga as etapas em um desses guias de início rápido com base em seu cenário.
Para cenários de autenticação delegada pelo navegador, consulte o guia de início rápido, Fazer login de usuários e chamar o Microsoft Graph de um aplicativo iOS ou macOS.
Para cenários de autenticação nativa em aplicativos para iOS, consulte o guia de exemplo do ID externa do Microsoft Entra, Executar o aplicativo iOS de exemplo.
Versões com Suporte
iOS – A MSAL dá suporte ao iOS 14 e superior.
macOS – A MSAL dá suporte ao macOS (OSX) 10.13 e superior.
Principais diferenças entre o Biblioteca de Autenticação da Microsoft para iOS e o macOS
Esta seção explica as diferenças de funcionalidade entre o Biblioteca do Microsoft Authenticator (MSAL) para iOS e macOS.
Note
No Mac, a MSAL dá suporte apenas a aplicativos macOS.
Diferenças gerais
MSAL para macOS é um subconjunto da funcionalidade disponível para iOS.
A MSAL para macOS não dá suporte a:
- diferentes tipos de navegador, como
ASWebAuthenticationSession,SFAuthenticationSession,SFSafariViewController. - A autenticação intermediada por meio do aplicativo Microsoft Authenticator não tem suporte no macOS.
O compartilhamento de conjunto de chaves entre aplicativos do mesmo editor é mais limitado no macOS 10.14 e anterior. Use listas de controle de acesso para especificar os caminhos para os aplicativos que devem compartilhar o conjunto de chaves. O usuário pode ver os prompts adicionais do conjunto de chaves.
No macOS 10.15+, o comportamento da MSAL é o mesmo entre iOS e macOS. A MSAL usa grupos de acesso de conjunto de chaves para compartilhamento de conjunto de chaves.
Autenticação de Acesso Condicional
Para cenários de Acesso Condicional, haverá menos solicitações ao usuário quando você usar o MSAL para iOS. Isso ocorre porque o iOS usa o aplicativo corretor (Microsoft Authenticator), o que elimina, em alguns casos, a necessidade de solicitar algo ao usuário.
Configuração do projeto
macOS
- Ao configurar seu projeto no macOS, verifique se o aplicativo está assinado com um certificado de desenvolvimento ou produção válido. O MSAL ainda funciona no modo não assinado, mas terá um comportamento diferente em relação à persistência em cache. O aplicativo só deve ser executado não assinado para fins de depuração. Se você distribuir o aplicativo não assinado, isso irá:
- Na versão 10.14 e anterior, a MSAL solicitará ao usuário uma senha de conjunto de chaves sempre que reiniciar o aplicativo.
- Na versão 10.15+, a MSAL solicitará ao usuário credenciais para cada aquisição de token.
- Os aplicativos macOS não precisam implementar a chamada appDelegate.
Ios
- Há etapas adicionais para configurar seu projeto para dar suporte ao fluxo do agente de autenticação. As etapas são destacadas no tutorial.
- Os projetos do iOS precisam registrar esquemas personalizados no info.plist. Isso não é necessário no macOS.
Migração da ADAL (Biblioteca de Autenticação de Azure Active Directory)
A ADAL (Biblioteca de Autenticação Azure Active Directory) para Objective-C foi preterida a partir de 30 de junho de 2023.. Se você ou sua organização estiver usando a ADAL (Biblioteca de Autenticação Azure Active Directory), você deverá migrar para a MSAL para evitar colocar a segurança do aplicativo em risco.
Exemplos
Confira nossa lista de exemplos abrangente.
Obter ajuda com o SDK
Se você tiver uma pergunta sobre o SDK da MSAL, encontrou um erro na documentação ou precisa de uma recomendação, crie um problema no Github com os detalhes.