Exemplos de código do Azure Active Directory (ponto final v1.0)
Aviso
Este conteúdo destina-se ao ponto final Azure AD v1.0 mais antigo. Utilize o plataforma de identidades da Microsoft para novos projetos.
Pode utilizar o Azure Active Directory (Azure AD) para adicionar autenticação e autorização às suas aplicações Web e APIs Web.
Esta secção fornece ligações para exemplos que pode utilizar para saber mais sobre o ponto final Azure AD v1.0. Estes exemplos mostram-lhe como é feito juntamente com fragmentos de código que pode utilizar nas suas aplicações. Na página de exemplo de código, encontrará tópicos de leitura-me detalhados que ajudam com requisitos, instalação e configuração. Além disso, o código é comentado para o ajudar a compreender as secções críticas.
Nota
Se estiver interessado em Microsoft Entra exemplos de código V2, veja exemplos de código v2.0 por cenário.
Aviso
O suporte para a Biblioteca de Autenticação do Active Directory (ADAL) terminará em dezembro de 2022. As aplicações que utilizam a ADAL em versões existentes do SO continuarão a funcionar, mas o suporte técnico e as atualizações de segurança irão terminar. Sem atualizações de segurança contínuas, as aplicações que utilizam a ADAL ficarão cada vez mais vulneráveis aos padrões de ataque de segurança mais recentes. Para obter mais informações, veja Migrar aplicações para a MSAL.
Para compreender o cenário básico para cada tipo de exemplo, veja Cenários de autenticação para Azure AD.
Também pode contribuir para os nossos exemplos no GitHub. Para saber como, veja Exemplos e documentação do Azure Active Directory.
Aplicações de página única
Este exemplo mostra como escrever uma aplicação de página única protegida com Azure AD.
Plataforma | Chama a sua própria API | Chama outra API Web |
---|---|---|
javascript-singlepageapp | ||
angularjs-singlepageapp | angularjs-singlepageapp-cors |
Aplicações Web
Aplicações Web a iniciar sessão de utilizadores, a chamar o Microsoft Graph ou uma API Web com a identidade do utilizador
Os exemplos seguintes ilustram as aplicações Web que assinam utilizadores. Algumas destas aplicações também chamam o Microsoft Graph ou a sua própria API Web, em nome do utilizador com sessão iniciada.
Plataforma | Apenas inicia sessão de utilizadores | Chama o Microsoft Graph | Chama outro ASP.NET ou ASP.NET Core API Web 2.0 |
---|---|---|---|
ASP.NET Core 2.0 | dotnet-webapp-openidconnect-aspnetcore | webapp-webapi-multitenant-openidconnect-aspnetcore (Azure AD Graph) | dotnet-webapp-webapi-openidconnect-aspnetcore |
ASP.NET 4.5 | webapp-WSFederation-dotNet dotnet-webapp-webapi-oauth2-useridentity | dotnet-webapp-multi-inquilino-openidconnect (Azure AD Graph) | |
python-webapp-graphapi | |||
java-webapp-openidconnect | |||
php-graphapi-web |
Aplicações Web que demonstram o controlo de acesso baseado em funções (autorização)
Os exemplos seguintes mostram como implementar o controlo de acesso baseado em funções (RBAC). O RBAC é utilizado para restringir as permissões de determinadas funcionalidades numa aplicação Web a determinados utilizadores. Os utilizadores estão autorizados consoante pertençam a um grupo Azure AD ou tenham uma determinada função de aplicação.
Plataforma | Sample | Descrição |
---|---|---|
ASP.NET 4.5 | dotnet-webapp-groupclaims dotnet-webapp-roleclaims | Uma aplicação Web .NET 4.5 MVC que utiliza funções de Azure AD para autorização |
Aplicações cliente públicas móveis e de ambiente de trabalho a chamar o Microsoft Graph ou uma API Web
Os exemplos seguintes ilustram as aplicações cliente públicas (aplicações de ambiente de trabalho/dispositivos móveis) que acedem ao Microsoft Graph ou a uma API Web em nome de um utilizador. Consoante os dispositivos e plataformas, as aplicações podem iniciar sessão de utilizadores de formas diferentes (fluxos/concessões):
- Interativamente
- Silenciosamente (com autenticação integrada do Windows no Windows ou nome de utilizador/palavra-passe)
- Ao delegar o início de sessão interativo noutro dispositivo (fluxo de código do dispositivo utilizado em dispositivos que não fornecem controlos Web)
Aplicação cliente | Plataforma | Fluxo/Concessão | Chama o Microsoft Graph | Chama um ASP.NET ou ASP.NET Core API Web 2.x |
---|---|---|---|---|
Ambiente de trabalho (WPF) | Interativo | Parte de dotnet-native-multitarget |
dotnet-native-desktop dotnet-native-aspnetcore dotnet-webapi-manual-jwt-validation |
|
Dispositivos móveis (UWP) | Interativo | dotnet-native-uwp-wam Este exemplo utiliza WAM, não ADAL.NET |
dotnet-windows-store (Aplicação UWP com ADAL.NET para chamar uma API Web de inquilino único)
dotnet-webapi-multitenant-windows-store (Aplicação UWP com ADAL.NET para chamar uma API Web multi-inquilino) |
|
Dispositivos móveis (Android, iOS, UWP) | Interativo | dotnet-native-multitarget |
||
Dispositivos móveis (Android) | Interativo | android |
||
Dispositivos móveis (iOS) | Interativo | nativeClient-iOS |
||
Ambiente de Trabalho (Consola) | Nome de utilizador/Palavra-passe Autenticação integrada do Windows | dotnet-native-headless |
||
Ambiente de Trabalho (Consola) | Nome de utilizador/Palavra-passe | java-native-headless |
||
Ambiente de Trabalho (Consola) | Fluxo de código do dispositivo | dotnet-deviceprofile |
Aplicações Daemon (aceder a APIs Web com a identidade da aplicação)
Os exemplos seguintes mostram aplicações de ambiente de trabalho ou Web que acedem ao Microsoft Graph ou a uma API Web sem nenhum utilizador (com a identidade da aplicação).
Aplicação cliente | Plataforma | Fluxo/Concessão | Chama uma API Web ASP.NET ou ASP.NET Core 2.0 |
---|---|---|---|
Aplicação Daemon (Consola) | Credenciais de Cliente com segredo ou certificado da aplicação | dotnet-daemon dotnet-daemon-certificate-credential | |
Aplicação Daemon (Consola) | Credenciais de Cliente com certificado | dotnetcore-daemon-certificate-credential | |
ASP.NET Web App | Credenciais de cliente | dotnet-webapp-webapi-oauth2-appidentity |
APIs da Web
API Web protegida pelo Azure Active Directory
O exemplo seguinte mostra como proteger uma API Web Node.js com Azure AD.
Nas secções anteriores deste artigo, também pode encontrar outros exemplos que ilustram uma aplicação cliente que chama uma ASP.NET ou ASP.NET Core API Web. Estes exemplos não são mencionados novamente nesta secção, mas irá encontrá-los na última coluna das tabelas acima ou abaixo
Plataforma | Sample |
---|---|
node-webapi |
API Web a chamar o Microsoft Graph ou outra API Web
Os exemplos seguintes demonstram uma API Web que chama outra API Web. O segundo exemplo mostra como lidar com o Acesso Condicional.
Plataforma | Chama o Microsoft Graph | Chama outro ASP.NET ou ASP.NET Core API Web 2.0 |
---|---|---|
ASP.NET 4.5 | dotnet-webapi-onbehalfof dotnet-webapi-onbehalfof-ca | dotnet-webapi-onbehalfof dotnet-webapi-onbehalfof-ca |
Outros exemplos do Microsoft Graph
Para obter exemplos e tutoriais que demonstrem diferentes padrões de utilização para o microsoft Graph API, incluindo a autenticação com Azure AD, veja Exemplos de Comunidade do Microsoft Graph & Tutoriais.