Tutorial: Criar um aplicativo Blazor Server que usa a plataforma de identidade da Microsoft para autenticação

Nesse tutorial, você criará um aplicativo Blazor Server que conecta os usuários e obtém dados do Microsoft Graph usando a plataforma de identidade da Microsoft e registrando seu aplicativo no Microsoft Entra ID.

Também temos um início rápido para Blazor WASM.

Neste tutorial:

  • Criar um aplicativo Blazor Server configurado para usar o Microsoft Entra ID para autenticação para usuários em uma única organização (no locatário do Microsoft Entra o aplicativo está registrado)
  • Manipular a autenticação e a autorização usando o Microsoft.Identity.Web
  • Recuperar dados de uma API Web protegida, Microsoft Graph

Pré-requisitos

Criar o aplicativo usando a CLI do .NET

mkdir <new-project-folder>
cd <new-project-folder>
dotnet new blazorserver --auth SingleOrg --calls-graph

Instalar a ferramenta do .NET de Sincronização de Aplicativos de Identidade da Microsoft

dotnet tool install --global msidentity-app-sync

Essa ferramenta automatiza as seguintes tarefas para você:

  • Como registrar seu aplicativo no Microsoft Entra ID
    • Criar um segredo do cliente para o seu aplicativo registrado
    • Registrar URIs de redirecionamento com base no seu launchsettings.json
  • Inicializar o uso de segredos de usuário no seu projeto
  • Armazenar o segredo do seu aplicativo no armazenamento de segredos do usuário
  • Atualizar seu appsettings.json com a ID do cliente, a ID do locatário e outras IDs.

As ferramentas do .NET ampliam os recursos do comando da CLI do dotnet. Para saber mais, confira Ferramentas do .NET.

Para obter mais informações sobre o armazenamento de segredos do usuário, confira armazenamento seguro dos segredos do aplicativo durante o desenvolvimento.

Usar a Ferramenta de Sincronização de Aplicativos de Identidade da Microsoft

Execute o comando a seguir para registrar seu aplicativo no seu locatário e atualizar a configuração do .NET do seu aplicativo. Forneça o nome de usuário/upn pertencente à sua Conta do Azure (por exemplo, username@domain.com) e a ID de locatário ou nome de domínio do Microsoft Entra ID associado à sua Conta do Azure.

msidentity-app-sync --username <username/upn> --tenant-id <tenantID>

Observação

  • Você não precisará fornecer o nome de usuário se estiver conectado com apenas uma conta nas ferramentas de desenvolvedor.
  • Você não precisará fornecer a ID do locatário se o locatário no qual quiser criar o aplicativo for seu locatário inicial.

Opcional – Criar um certificado SSL de desenvolvimento

Para evitar erros/avisos de SSL ao navegar pelo aplicativo em execução, você pode usar o seguinte no macOS e no Windows para gerar o certificado SSL autoassinado para uso pelo .NET.

dotnet dev-certs https --trust

Executar o aplicativo

No terminal, execute o seguinte comando:

dotnet run

Navegue até o aplicativo web em execução usando o URL gerado pela linha de comando.

Próximas etapas

Saiba mais sobre a compilação de um aplicativo Web ASP.NET Core que conecta usuários na seguinte série de tutoriais de várias partes: