Compartilhar via


Tutorial: Preparar seu aplicativo iOS/macOS para autenticação nativa

Aplica-se a: Círculo branco com um símbolo X cinza. Locatários de força de trabalho Círculo verde com um símbolo de visto branco. 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

Adicionar a estrutura MSAL a um aplicativo iOS/macOS

  1. Abra seu projeto iOS/macOS no Xcode.
  2. Selecione Adicionar Dependências de Pacote... no menu Arquivo.
  3. Insira https://github.com/AzureAD/microsoft-authentication-library-for-objc como a URL do Pacote e escolha Adicionar Pacote.
  4. Adicione um novo grupo de conjunto de chaves ao seu projeto Funcionalidades. Use com.microsoft.adalcache no iOS e com.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

  1. Importe a biblioteca MSAL para o controlador de exibição adicionando import MSAL na parte superior da sua ViewController classe.

  2. Adicione uma nativeAuth variável de membro à sua ViewController classe adicionando o seguinte código pouco antes da viewDidLoad() função:

    var nativeAuth: MSALNativeAuthPublicClientApplication!
    
  3. 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)")
     }
    
  4. Substitua os seguintes valores pelos valores do Centro de administração do Microsoft Entra:

    1. Localize o Enter_the_Application_Id_Here valor e substitua-o pela ID do aplicativo (cliente) do aplicativo que você registrou anteriormente.

    2. 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 for contoso.onmicrosoft.com, use contoso. 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.

  5. 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.

Próxima etapa