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.
Aplica-se a: Locatários de força de trabalho
Locatários externos (saiba mais)
Este tutorial demonstra como adicionar a estrutura do SDK de autenticação nativa da MSAL (Biblioteca de Autenticação da Microsoft) ao aplicativo Swift do iOS/macOS.
Neste tutorial, você:
- Adicione a estrutura MSAL a um aplicativo iOS/macOS.
- Criar uma instância do SDK.
Pré-requisitos
- Xcode
- Caso ainda não tenha feito isso, siga as instruções em Entrar usuários no aplicativo móvel iOS (Swift) de exemplo usando autenticação nativa e registre um aplicativo em seu locatário externo. Conclua as seguintes etapas:
- Registre um aplicativo.
- Habilite o cliente público e os fluxos de autenticação nativos.
- Conceda permissões de API.
- Crie um fluxo de usuário.
- Associe o aplicativo ao fluxo do usuário.
- Projeto iOS/macOS
Adicionar a estrutura MSAL a um aplicativo iOS/macOS
- Abra seu projeto iOS/macOS no Xcode.
- Selecione Adicionar Dependências de Pacote... no menu Arquivo.
- Insira
https://github.com/AzureAD/microsoft-authentication-library-for-objc
como a URL do Pacote e escolha Adicionar Pacote. - Adicione um novo grupo de conjunto de chaves ao seu projeto Funcionalidades. Use
com.microsoft.adalcache
no iOS ecom.microsoft.identity.universalstorage
no macOS.
Para obter mais informações e outros mecanismos para adicionar MSAL ao seu projeto, consulte o arquivo Readme do projeto.
Criar instância do SDK
Importe a biblioteca MSAL para o controlador de exibição adicionando
import MSAL
na parte superior da suaViewController
classe.Adicione uma
nativeAuth
variável de membro à suaViewController
classe adicionando o seguinte código pouco antes daviewDidLoad()
função:var nativeAuth: MSALNativeAuthPublicClientApplication!
Em seguida, adicione o seguinte código à
viewDidLoad()
função:do { nativeAuth = try MSALNativeAuthPublicClientApplication( clientId: "Enter_the_Application_Id_Here", tenantSubdomain: "Enter_the_Tenant_Subdomain_Here", challengeTypes: [.OOB] ) print("Initialized Native Auth successfully.") } catch { print("Unable to initialize MSAL \(error)") }
Substitua os seguintes valores pelos valores do Centro de administração do Microsoft Entra:
Localize o
Enter_the_Application_Id_Here
valor e substitua-o pela ID do aplicativo (cliente) do aplicativo que você registrou anteriormente.Localize o
Enter_the_Tenant_Subdomain_Here
e substitua-o pelo subdomínio do Diretório (locatário). Por exemplo, se o domínio primário do locatário forcontoso.onmicrosoft.com
, usecontoso
. Se você não tiver o subdomínio do Diretório (locatário), saiba como ler os detalhes do locatário.Os tipos de desafio são uma lista de valores, que o aplicativo usa para notificar o Microsoft Entra sobre o método de autenticação compatível.
- Para fluxos de inscrição e entrada com senha de uso único por email, use
[.OOB]
. - Para fluxos de inscrição e entrada com email e senha, use
[.OOB, .password]
. - Para redefinição de senha self-service (SSPR), use
[.OOB]
.
Saiba mais sobre os tipos de desafio.
- Para fluxos de inscrição e entrada com senha de uso único por email, use
Para compilar, selecione o Produto>Compilar na barra de ferramentas do projeto.
Opcional: configuração de registro em log
A MSAL fornece uma API de registro em log que você pode usar para habilitar e configurar o registro em log. Para ver todos os resultados de depuração da MSAL, adicione o seguinte código no início da função viewDidLoad()
:
MSALGlobalConfig.loggerConfig.logLevel = .verbose
MSALGlobalConfig.loggerConfig.setLogCallback { logLevel, message, containsPII in
if !containsPII {
print("MSAL: \(message ?? "")")
}
}
Isso gera todos os logs de depuração da MSAL, o que pode ser útil para diagnosticar problemas e entender como funcionam os fluxos de autenticação nativa. Para saber mais sobre como configurar níveis de log e práticas recomendadas, consulte Registro no MSAL para iOS/macOS.