Guia de início rápido: entre em usuários e chame a API do Microsoft Graph a partir de um aplicativo Web ASP.NET Core

Este guia de início rápido usa um exemplo de aplicativo Web ASP.NET Core para mostrar como entrar usuários usando o fluxo de código de autorização e chamar a API do Microsoft Graph. O exemplo usa a Biblioteca de Autenticação da Microsoft para .NET e o Microsoft Identity Web para manipular a autenticação.

Pré-requisitos

Registar a aplicação e os identificadores de registo

Para concluir o registro, forneça um nome ao aplicativo e especifique os tipos de conta suportados. Uma vez registrado, o painel Visão geral do aplicativo exibe os identificadores necessários no código-fonte do aplicativo.

  1. Inicie sessão no centro de administração do Microsoft Entra.

  2. Se você tiver acesso a vários locatários, use o ícone Configurações no menu superior para alternar para o locatário no qual deseja registrar o aplicativo no menu Diretórios + assinaturas.

  3. Navegue até Registros do aplicativo Aplicativos de identidade>>, selecione Novo registro.

  4. Insira um Nome para o aplicativo, como identity-client-web-app.

  5. Em Tipos de conta suportados, selecione Contas somente neste diretório organizacional. Para obter informações sobre diferentes tipos de conta, selecione a opção Ajude-me a escolher .

  6. Selecione Registar.

    Captura de ecrã que mostra como introduzir um nome e selecionar o tipo de conta no centro de administração do Microsoft Entra.

  7. O painel Visão geral do aplicativo é exibido quando o registro é concluído. Registre o ID do diretório (locatário) e o ID do aplicativo (cliente) a serem usados no código-fonte do aplicativo.

    Captura de tela que mostra os valores de identificador na página de visão geral no centro de administração do Microsoft Entra.

    Nota

    Os tipos de conta suportados podem ser alterados consultando Modificar as contas suportadas por um aplicativo.

Adicionar um URI de redirecionamento de plataforma

Para especificar o tipo de aplicativo para o registro do aplicativo, siga estas etapas:

  1. Em Gerir, selecione Autenticação.
  2. Na página Configurações da plataforma, selecione Adicionar uma plataforma e, em seguida, selecione a opção Web.
  3. Para os URIs de redirecionamento, digite https://localhost:5001/signin-oidc.
  4. Em URL de logout do canal frontal, digite https://localhost:5001/signout-callback-oidc para sair.
  5. Selecione Configurar para salvar as alterações.

Clone ou baixe o aplicativo de exemplo

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 digite o seguinte comando:

    git clone https://github.com/Azure-Samples/ms-identity-docs-code-dotnet.git
    
  • Transfira o ficheiro .zip. Extraia-o para um caminho de arquivo onde o comprimento do nome é inferior a 260 caracteres.

Criar e carregar um certificado autoassinado

  1. Usando seu terminal, use os seguintes comandos para navegar para criar um certificado autoassinado no diretório do projeto.

    cd ms-identity-docs-code-dotnet\web-app-aspnet\
    dotnet dev-certs https -ep ./certificate.crt --trust
    
  2. Retorne ao centro de administração do Microsoft Entra e, em Gerenciar, selecione Certificados & segredos>Carregar certificado.

  3. Selecione o separador Certificados (0) e, em seguida, selecione Carregar certificado.

  4. É apresentado um painel Carregar certificado . Use o ícone para navegar até o arquivo de certificado criado na etapa anterior e selecione Abrir.

  5. Insira uma descrição para o certificado, por exemplo , Certificado para aspnet-web-app, e selecione Adicionar.

  6. Registre o valor de impressão digital para uso na próxima etapa.

Configurar o projeto

  1. No IDE, abra a pasta do projeto, ms-identity-docs-code-dotnet\web-app-aspnet, que contém o exemplo.

  2. Abra appsettings.json e substitua o conteúdo do arquivo pelo seguinte trecho;

    {
    "AzureAd": {
      "Instance": "https://login.microsoftonline.com/",
      "TenantId": "Enter the tenant ID obtained from the Microsoft Entra admin center",
      "ClientId": "Enter the client ID obtained from the Microsoft Entra admin center",
      "ClientCertificates": [
        {
          "SourceType": "StoreWithThumbprint",
          "CertificateStorePath": "CurrentUser/My",
          "CertificateThumbprint": "Enter the certificate thumbprint obtained the Microsoft Entra admin center"
        }   
      ],
      "CallbackPath": "/signin-oidc"
    },
      "DownstreamApi": {
        "BaseUrl": "https://graph.microsoft.com/v1.0/",
        "RelativePath": "me",
        "Scopes": [ 
          "user.read" 
        ]
      },
      "Logging": {
        "LogLevel": {
          "Default": "Information",
          "Microsoft.AspNetCore": "Warning"
        }
      },
      "AllowedHosts": "*"
    }
    
    • TenantId - O identificador do inquilino onde a aplicação está registada. Substitua o texto entre aspas pelo Directory (tenant) ID que foi gravado anteriormente na página de visão geral do aplicativo registrado.
    • ClientId - O identificador da aplicação, também referido como o cliente. Substitua o texto entre aspas pelo Application (client) ID valor que foi registrado anteriormente na página de visão geral do aplicativo registrado.
    • ClientCertificates - Um certificado auto-assinado é usado para autenticação no aplicativo. Substitua o texto do CertificateThumbprint pela impressão digital do certificado que foi gravado anteriormente.

Execute o aplicativo e entre

  1. No diretório do projeto, use o terminal para inserir o seguinte comando;

    dotnet run
    
  2. Copie o https URL que aparece no terminal, por exemplo, https://localhost:5001e cole-o em um navegador. Recomendamos o uso de uma sessão privada ou anônima do navegador.

  3. Siga os passos e introduza os detalhes necessários para iniciar sessão com a sua conta Microsoft. É-lhe pedido que forneça um endereço de e-mail para que lhe possa ser enviado um código de acesso único. Insira o código quando solicitado.

  4. A aplicação solicita permissão para manter o acesso aos dados aos quais lhe deu acesso, para iniciar sessão e ler o seu perfil. Selecione Aceitar.

  5. A captura de tela a seguir é exibida, indicando que você entrou no aplicativo e acessou os detalhes do seu perfil a partir da API do Microsoft Graph.

    Captura de tela mostrando os resultados da chamada de API.

Sair do aplicativo

  1. Encontre o link Sair no canto superior direito da página e selecione-o.
  2. Você será solicitado a escolher uma conta da qual sair. Selecione a conta que utilizou para iniciar sessão.
  3. Uma mensagem é exibida indicando que você saiu. Agora você pode fechar a janela do navegador.