Partilhar via


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

Aplica-se a: círculo verde com um símbolo de marca de seleção branco que indica que o conteúdo a seguir se aplica a locatários externos. Inquilinos externos (saiba mais)

Este tutorial demonstra como adicionar a estrutura do SDK de autenticação nativa da Biblioteca de Autenticação da Microsoft (MSAL) ao seu aplicativo iOS/macOS Swift.

Neste tutorial, você:

  • Adicione a estrutura MSAL a um aplicativo iOS/macOS.
  • Crie 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. Digite https://github.com/AzureAD/microsoft-authentication-library-for-objc como URL do pacote e escolha Adicionar pacote.
  4. Adicione um novo grupo de chaves ao seu projeto Capacidades. 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 classe ViewController.

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

    var nativeAuth: MSALNativeAuthPublicClientApplication!
    
  3. Em seguida, adicione o seguinte código à função viewDidLoad():

     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. Encontre o valor Enter_the_Application_Id_Here e substitua-o pelo ID de Aplicação (cliente) da aplicação que registaram anteriormente.

    2. Localize o Enter_the_Tenant_Subdomain_Here e substitua-o pelo subdomínio Directory (locatário). Por exemplo, se o domínio principal do seu inquilino for contoso.onmicrosoft.com, use contoso. Se não tiver o seu subdomínio de Diretório (tenant), saiba como consultar os detalhes do tenant.

      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 que ele suporta.

      • Para fluxos de registo e login com código único enviado por e-mail, use [.OOB].
      • Para fluxos de inscrição e login com e-mail e senha, use [.OOB, .password].
      • Para redefinição de senha de autoatendimento (SSPR), use [.OOB].

      Saiba mais sobre os tipos de desafio .

  5. Para criar, selecione a opção Product>Build na barra de ferramentas do seu projeto.

Opcional: Configuração de registo

O MSAL fornece uma API de registro em log que você pode usar para habilitar e configurar o log. Para ver toda a saída de depuração do 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 ?? "")")
   }
}

Ao gerar todos os logs de depuração do MSAL, isto pode ser útil tanto para diagnosticar problemas como para aprender como funcionam os fluxos de autenticação nativos. Para saber mais sobre como configurar níveis de registo e práticas recomendadas, consulte Registo de logs do MSAL para iOS/macOS.

Próximo passo