Fazer login de usuários no exemplo de aplicativo Android (Kotlin)
Esse guia demonstra como configurar um aplicativo móvel Android de amostra para conectar usuários.
Neste artigo, você executará as seguintes tarefas:
- Registre um aplicativo no centro de administração do Microsoft Entra.
- Adicione uma URL de redirecionamento de plataforma.
- Habilite fluxos de cliente públicos.
- Atualize o arquivo de exemplo de código de configuração do Android para usar seus detalhes do locatário da ID externa do Microsoft Entra para clientes.
- Execute e teste o exemplo de aplicativo móvel Android.
Pré-requisitos
- Android Studio.
- Um locatário externo. Caso ainda não tenha uma, inscreva-se em uma avaliação gratuita.
Registrar um aplicativo
Para permitir a entrada de usuários com o Microsoft Entra no seu aplicativo, a ID externa do Microsoft Entra deve estar ciente do aplicativo criado. O registro do aplicativo estabelece uma relação de confiança entre o aplicativo e o Microsoft Entra. Quando você registra um aplicativo, o External ID 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:
Faça login no Centro de administração do Microsoft Entra como pelo menos um Desenvolvedor de aplicativos.
Se tiver acesso a vários locatários, use o ícone Configurações no menu superior para alternar para o seu locatário externo no menu Diretórios + assinaturas.
Navegue até Identidade>Aplicativos>Registros do aplicativo.
Selecione + Novo Registro.
Na página Registrar um aplicativo que aparece;
- Insira um Nome de aplicativo relevante que será exibido aos usuários do aplicativo, por exemplo,ciam-client-app.
- Em Tipos de contas com suporte, selecione Contas somente neste diretório organizacional.
Selecione Registrar.
O painel Visão geral do aplicativo será exibido após o registro bem-sucedido. Grave a ID do aplicativo (cliente) que será usada no código-fonte do aplicativo.
Adicionar uma URL de redirecionamento de plataforma
Para especificar o tipo de aplicativo para o registro do aplicativo, siga estas etapas:
- Em Gerenciar, selecione Autenticação.
- Na página Configurações da plataforma, selecione Adicionar uma plataforma e, em seguida, selecione a opção Android.
- Insira o nome do pacote do seu projeto. Se você baixou o código de exemplo, esse valor será
com.azuresamples.msaldelegatedandroidkotlinsampleapp
. - Na seção Hash de assinatura do painel Configurar seu aplicativo Android, selecione Como gerar um Hash de Assinatura de desenvolvimento. Isso mudará para cada ambiente de desenvolvimento. Copie e execute o comando KeyTool do seu sistema operacional em seu Terminal.
- Insira o Hash de assinatura gerado por KeyTool.
- Selecione Configurar.
- Copie a Configuração MSAL do painel de Configuração do Android e salve-a para configurar o aplicativo mais tarde.
- Selecione Concluído.
Habilitar fluxo de cliente público
Para identificar seu aplicativo como um cliente público, siga estas etapas:
Em Gerenciar, selecione Autenticação.
Em Configurações avançadas, na opção Permitir fluxos de clientes públicos, selecione Sim.
Selecione Salvar para salvar as alterações.
Conceder consentimento do administrador
Depois que você registra o aplicativo, ele recebe a permissão User.Read. No entanto, como o locatário é externo, os próprios usuários clientes 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:
Na página Registros de aplicativo, selecione o aplicativo que você criou (como ciam-client-app) para abrir sua página Visão geral.
Em Gerenciar, selecione Permissões de API.
- Selecione Dar consentimento de administrador para <nome do seu locatário> e selecione Sim.
- Selecione Atualizar e verifique se Concedido para <nome do seu locatário> aparece em Status para a permissão.
Clonar um aplicativo móvel de exemplo do Android
Para obter o aplicativo de exemplo, você pode cloná-lo do GitHub ou baixá-lo como um arquivo .zip.
Para clonar o exemplo, abra um prompt de comando e navegue até onde deseja criar o projeto e insira o seguinte comando:
git clone https://github.com/Azure-Samples/ms-identity-ciam-browser-delegated-android-sample
Configurar o aplicativo móvel de exemplo do Android
Para habilitar a autenticação e o acesso aos recursos do Microsoft Graph, configure o exemplo seguindo essas etapas:
No Android Studio, abra o projeto clonado.
Abra o arquivo /app/src/main/res/raw/auth_config_ciam.json.
Localize o espaço reservado:
Enter_the_Application_Id_Here
e substitua pela ID do Aplicativo (cliente) referente ao aplicativo registrado antes.Enter_the_Redirect_Uri_Here
e substitua-o pelo valor de redirect_uri no arquivo de configuração da Microsoft Authentication Library (MSAL) que você baixou anteriormente quando adicionou a URL de redirecionamento da plataforma.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 sabe o subdomínio do seu locatário, confira como ler os detalhes do locatário.
Abra o arquivo /app/src/main/AndroidManifest.xml.
Localize o espaço reservado:
ENTER_YOUR_SIGNATURE_HASH_HERE
e substitua-o pelo Hash de assinatura que você gerou anteriormente ao adicionar o URL de redirecionamento da plataforma.
Abra o arquivo /app/src/main/java/com/azuresamples/msaldelegatedandroidkotlinsampleapp/MainActivity.kt.
Localize a propriedade nomeada
scopes
e defina os escopos registrados na Concessão de consentimento do administrador. Se você não tiver registrado nenhum escopo, poderá deixar essa lista de escopo vazia.private const val scopes = "" // Developers should set the respective scopes of their Microsoft Graph resources here. For example, private const val scopes = "api://{clientId}/{ToDoList.Read} api://{clientId}/{ToDoList.ReadWrite}"
Você configurou o aplicativo e ele está pronto para ser executado.
Executar e testar o aplicativo móvel de exemplo do Android
Para compilar e executar seu aplicativo, siga estas etapas:
Na barra de ferramentas, selecione o aplicativo no menu de configurações de execução.
No menu do dispositivo de destino, selecione o dispositivo no qual deseja executar seu aplicativo.
Caso você não tenha nenhum dispositivo configurado, crie um AVD para usar o Android Emulator ou conecte um dispositivo Android físico.
Selecione o botão Executar.
Selecione Adquirir token interativamente para solicitar um token de acesso.
Se você selecionar API – Executar GET para chamar uma API Web do ASP.NET Core protegida, receberá um erro.
Para obter mais informações sobre como chamar uma API Web protegida, veja nossas Próximas etapas