Tutorial: Configurar um aplicativo Web ASP.NET Core que autentica usuários
Aplica-se a: Os Locatários do Workforce
Os Inquilinos Externos (saiba mais)
Neste tutorial, você cria um aplicativo Web ASP.NET Core e o configura para autenticação. Esta é a parte 1 de uma série que demonstra como criar um aplicativo Web ASP.NET Core e prepará-lo para autenticação usando o centro de administração do Microsoft Entra. Este aplicativo pode ser usado para funcionários em um locatário da força de trabalho ou para clientes que usam um locatário externo
Neste tutorial:
- Criar um aplicativo Web ASP.NET Core
- Criar um certificado autoassinado
- Definir as configurações para o aplicativo
- Definir configurações e URLs da plataforma
Pré-requisitos
- Uma conta do Azure com uma assinatura ativa.
Crie uma conta gratuitamente. Essa conta deve ter permissões para gerenciar aplicativos. Use qualquer uma das seguintes funções necessárias para registrar o aplicativo:
- Administrador de aplicativos
- Desenvolvedor de aplicativos
- Administrador de aplicativos na nuvem
- Embora qualquer ambiente de desenvolvimento integrado (IDE) que ofereça suporte a aplicativos ASP.NET Core possa ser usado, este tutorial usa Visual Studio Code. Você pode baixá-lo aqui.
- Um requisito mínimo de .NET 8.0 SDK.
- Um certificado de desenvolvedor ASP.NET Core. Instale um usando dotnet dev-certs
- Um inquilino de habitação para trabalhadores. Você pode usar o diretório padrão ou configurar um novo locatário.
- Uma aplicação registada no centro de administração do Microsoft Entra. Use a seguinte configuração para os fins desta série de tutoriais:
- Nome: identity-client-web-app
- Tipos de conta suportados: Contas neste diretório organizacional apenas
-
Redirecionar URI:
https://localhost:5001/signin-oidc
-
URL de logout do canal frontal:
https://localhost:5001/signout-oidc
- Para fins de desenvolvimento, crie um certificado autoassinado. Consulte para adicionar credenciais, carregar o certificado e registar a impressão digital do certificado . Não use um certificado autoassinado em aplicações de produção. Use uma autoridade de certificação confiável.
Criar um projeto ASP.NET Core
Nesta seção, você criará um projeto ASP.NET Core no Visual Studio Code.
Abra o Visual Studio Code, selecione Arquivo > Abrir Pasta.... Navegue até o local para criar seu projeto e selecione-o.
Abra um novo terminal selecionando Terminal > Novo Terminal.
Insira o comando a seguir para criar um projeto ASP.NET Core MVC (Model View Controller).
dotnet new mvc -n identity-client-web-app
Instalar pacotes de identidade
Este aplicativo usa Microsoft.Identity.Web e o pacote NuGet relacionado deve ser instalado.
Use o seguinte trecho para mudar para a nova pasta identity-client-web-app e instalar o pacote NuGet relevante:
dotnet add package Microsoft.Identity.Web.UI
Configurar o aplicativo para autenticação
Os valores registrados na configuração do aplicativo são usados para configurar o aplicativo para autenticação. O arquivo de configuração, appsettings.json, é usado para armazenar as configurações do aplicativo usadas durante o tempo de execução.
Atualizar o arquivo de configuração
No IDE, abra o appsettings.json e substitua o conteúdo do arquivo pelo trecho a seguir. Substitua o texto entre aspas pelos valores que foram registrados anteriormente.
{
"AzureAd": {
"Instance": "https://login.microsoftonline.com/",
"TenantId": "Enter_the_Tenant_Id_Here",
"ClientId": "Enter_the_Application_Id_Here",
"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": "*"
}
-
Instance
- O ponto de extremidade de autenticação. Consulte os diferentes pontos finais disponíveis em Nuvens nacionais. -
TenantId
- O identificador do locatário onde o aplicativo está registrado. Substitua o texto entre aspas pelo valor do ID de diretório (locatário) que foi anotado anteriormente na página de resumo do aplicativo registado. -
ClientId
- O identificador do aplicativo, também conhecido como cliente. Substitua o texto entre aspas pelo valor do ID de Aplicação (cliente) que foi registrado anteriormente na página de visão geral da aplicação registrada. -
ClientCertificates
- Um certificado autoassinado é usado para autenticação no aplicativo. Substitua o texto doCertificateThumbprint
pela impressão digital do certificado que foi gravado anteriormente. Não use um certificado autoassinado para aplicativos de produção. -
CallbackPath
- É um identificador para ajudar o servidor a redirecionar uma resposta para o aplicativo apropriado. -
DownstreamApi
- É um identificador que define um ponto de extremidade para acessar o Microsoft Graph. O URI da aplicação é associado ao escopo especificado. Para definir a configuração de um aplicativo de propriedade da organização, o valor do atributoScopes
é ligeiramente diferente.
Atualizar o URI de redirecionamento
A partir dos pré-requisitos , a URI de redirecionamento é configurada como https://localhost:5001/signin-oidc
. Isso precisa ser atualizado nas configurações de inicialização do aplicativo. Você pode usar o URI de redirecionamento criado durante a configuração do aplicativo local ou qualquer outro número de porta disponível, desde que corresponda ao URI de redirecionamento no registro do aplicativo.
Na pasta Propriedades, abra o arquivo launchSettings.json.
Localize o objeto
https
e atualize o valor deapplicationURI
com o número de porta correto, neste caso,5001
. A linha deve ser semelhante ao seguinte trecho:"applicationUrl": "https://localhost:5001;http://localhost:{port}",
Próximo passo
- do inquilino do Workforce
- Inquilino externo