Iniciar sessão de utilizadores na aplicação macOS (Swift) de exemplo utilizando autenticação nativa
Este guia mostra como executar um aplicativo de exemplo do macOS que demonstra cenários de inscrição e entrada usando o Microsoft Entra External ID.
Neste artigo, vai aprender a:
- Registre o aplicativo no locatário externo.
- Habilite fluxos de autenticação nativa e de cliente público.
- Crie fluxo de usuário no locatário externo.
- Associe seu aplicativo ao fluxo de usuários.
- Atualize um exemplo de aplicativo nativo do macOS para usar seus próprios detalhes de locatário externo.
- Execute e teste o aplicativo macOS nativo de exemplo.
Pré-requisitos
- XCode
- Um locatário externo. Se ainda não tiver uma, inscreva-se para uma avaliação gratuita
Registar uma aplicação
Para permitir que seu aplicativo entre usuários com o Microsoft Entra, a ID Externa do Microsoft Entra deve estar ciente do aplicativo criado. O registo da aplicação estabelece uma relação de confiança entre a aplicação e o Microsoft Entra. Quando você registra um aplicativo, o ID externo gera um identificador exclusivo conhecido como ID do aplicativo (cliente), um valor usado para identificar seu aplicativo ao criar solicitações de autenticação.
As etapas a seguir mostram como registrar seu aplicativo no centro de administração do Microsoft Entra:
Entre no centro de administração do Microsoft Entra como pelo menos um desenvolvedor de aplicativos.
Se tiver acesso a vários inquilinos, utilize o ícone Definições no menu superior para mudar para o inquilino externo a partir do menu Diretórios + subscrições.
Navegue até Registros do aplicativo Identity>Applications>.
Selecione + Novo registo.
Na página Registar uma candidatura que aparece;
- Insira um Nome de aplicativo significativo que é exibido para os usuários do aplicativo, por exemplo, ciam-client-app.
- Em Tipos de conta suportados, selecione Contas somente neste diretório organizacional.
Selecione Registar.
O painel Visão geral do aplicativo é exibido após o registro bem-sucedido. Registre o ID do aplicativo (cliente) a ser usado no código-fonte do aplicativo.
Habilitar fluxos de autenticação nativa e de cliente público
Para especificar que este aplicativo é um cliente público e pode usar autenticação nativa, habilite o cliente público e os fluxos de autenticação nativa:
- Na página de registros de aplicativos, selecione o registro do aplicativo para o qual você deseja habilitar fluxos de autenticação nativa e de cliente público.
- Em Gerir, selecione Autenticação.
- Em Configurações avançadas, permita fluxos de clientes públicos:
- Em Ativar os seguintes fluxos móveis e de desktop, selecione Sim.
- Em Habilitar autenticação nativa, selecione Sim.
- Selecione o botão Salvar .
Conceder consentimento do administrador
Na página Registros de aplicativos, selecione o aplicativo que você criou (como ciam-client-app) para abrir a página Visão geral.
Em Gerenciar, selecione Permissões de API. Na lista Permissões configuradas, seu aplicativo recebeu a permissão User.Read. No entanto, como o locatário é um locatário externo, os próprios usuários consumidores não podem consentir com essa permissão. Você, como administrador, deve consentir com essa permissão em nome de todos os usuários no locatário:
- Selecione Conceder consentimento de administrador para <o nome> do seu inquilino e, em seguida, selecione Sim.
- Selecione Atualizar e verifique se Concedido para <o nome> do locatário aparece em Status para ambos os escopos.
Criar um fluxo de utilizador
Siga estas etapas para criar um fluxo de usuário.
Entre no centro de administração do Microsoft Entra como pelo menos um desenvolvedor de aplicativos.
Se você tiver acesso a vários locatários, certifique-se de usar o diretório que contém seu locatário externo:
- Selecione o ícone Diretórios + assinaturas na barra de ferramentas.
- Nas configurações do Portal | Página Diretórios + assinaturas , localize seu diretório de locatário externo na lista Nome do diretório e selecione Alternar.
No menu da barra lateral, selecione Identidade.
Selecione Identidades Externas>Fluxos de usuário.
Selecione + Novo fluxo de usuário.
Na página Criar:
Insira um Nome para o fluxo de usuário, como SignInSignUpSample.
Na lista Provedores de identidade, selecione Contas de email. Esse provedor de identidade permite que os usuários entrem ou se inscrevam usando seu endereço de e-mail e senha.
Em Contas de e-mail, pode selecionar uma das duas opções. Para este tutorial, selecione E-mail com senha.
- E-mail com senha: permite que novos usuários se inscrevam e entrem usando um endereço de e-mail como nome de login e uma senha como sua credencial de primeiro fator.
- Senha única por e-mail: permite que novos usuários se inscrevam e entrem usando um endereço de e-mail como nome de entrada e senha única por e-mail como sua primeira credencial de fator. Para que essa opção esteja disponível no nível de fluxo do usuário, certifique-se de habilitar a OTP (código de acesso único) de email no nível do locatário (selecione Todos os Provedores de Identidade e, em seguida, para Senha única de e-mail , selecione Configurado, selecione a opção Sim e selecione Salvar).
Em Atributos de usuário, você pode escolher os atributos que deseja coletar do usuário no momento da inscrição. Para este guia, selecione País/Região e Cidade.
Selecione Criar. O novo fluxo de usuário aparece na lista Fluxos de usuário. Se necessário, atualize a página.
Associar o aplicativo ao fluxo do usuário
Para que os usuários clientes vejam a experiência de inscrição ou entrada quando usam seu aplicativo, você precisa associar seu aplicativo a um fluxo de usuário. Embora muitos aplicativos possam ser associados ao seu fluxo de usuário, um único aplicativo só pode ser associado a um fluxo de usuário.
No menu da barra lateral, selecione Identidade.
Selecione Identidades externas e, em seguida , Fluxos de usuário.
Na página Fluxos de usuário, selecione o nome do fluxo de usuário criado anteriormente, por exemplo, SignInSignUpSample.
Em Usar, selecione Aplicativos.
Selecione Adicionar aplicativo.
Selecione o aplicativo na lista, como ciam-client-app , ou use a caixa de pesquisa para localizar o aplicativo e, em seguida, selecione-o.
Escolha Selecionar.
Depois de associar seu aplicativo a um fluxo de usuário, você pode testar seu fluxo de usuário simulando a experiência de inscrição ou entrada de um usuário com seu aplicativo a partir do centro de administração do Microsoft Entra. Para fazer isso, use as etapas em Testar seu fluxo de usuário de inscrição e login.
Clonar aplicativo macOS de exemplo
Abra o Terminal e navegue até um diretório onde deseja manter o código.
Clone o aplicativo macOS do GitHub executando o seguinte comando:
git clone https://github.com/Azure-Samples/ms-identity-ciam-native-auth-macos-sample.git
Navegue até o diretório onde o repositório foi clonado:
cd ms-identity-ciam-native-auth-macos-sample
Configurar o aplicativo macOS de exemplo
No Xcode, abra o projeto NativeAuthSampleAppMacOS.xcodeproj .
Abra o arquivo NativeAuthSampleAppMacOS/Configuration.swift .
Encontre o espaço reservado:
Enter_the_Application_Id_Here
e substitua-o pelo ID do aplicativo (cliente) do aplicativo que você registrou anteriormente.Enter_the_Tenant_Subdomain_Here
e substitua-o pelo subdomínio Directory (locatário). Por exemplo, se o domínio principal do locatário forcontoso.onmicrosoft.com
, use contoso. Se não tiver o subdomínio do inquilino, saiba como ler os detalhes do inquilino.
Nota
Lembre-se de selecionar um esquema para construir e destino onde você executa os produtos construídos. Cada esquema contém uma lista de dispositivos reais ou simulados que representam os destinos disponíveis.
Executar e testar o aplicativo macOS de exemplo
Para criar e executar seu código, selecione Executar no menu Produto no Xcode. Após uma compilação bem-sucedida, o Xcode iniciará o aplicativo de exemplo no simulador.
Este guia testa o uso de e-mail e senha . Insira um endereço de e-mail e senha válidos, selecione Inscrever-se e inicie a tela de envio de código:
Depois de inserir seu endereço de e-mail na tela anterior, o aplicativo enviará um código de verificação para ele. Depois de enviar o código recebido, o aplicativo leva você de volta para a tela anterior e automaticamente faz login.