Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
A autenticação agenciada coleta credenciais do usuário usando o agente de autenticação do sistema para autenticar um aplicativo. Um agente de autenticação do sistema é um aplicativo em execução no computador de um usuário que gerencia os handshakes de autenticação e a manutenção de token para todas as contas conectadas.
A autenticação agenciada oferece os seguintes benefícios:
- Habilita o SSO (Sign-On Único): Permite que os aplicativos simplifiquem a autenticação dos usuários com a ID do Microsoft Entra e protejam os tokens de atualização da ID do Microsoft Entra contra exfiltração e uso indevido.
- Segurança aprimorada: Muitos aprimoramentos de segurança são fornecidos com o agente, sem a necessidade de atualizar a lógica do aplicativo.
- Suporte a recursos aprimorados: Com a ajuda do agente, os desenvolvedores podem acessar recursos avançados de sistema operacional e serviço.
- Integração do sistema: Aplicativos que usam o plug-and-play do agente com o seletor de conta interno, permitindo que o usuário escolha rapidamente uma conta existente em vez de reentrar nas mesmas credenciais várias vez.
- Proteção de Token: Garante que os tokens de atualização estejam associados ao dispositivo e permita que os aplicativos adquiram tokens de acesso associados ao dispositivo. Consulte a Proteção de Token.
O Windows fornece um agente de autenticação chamado WAM (Gerenciador de Contas Web). O WAM permite que provedores de identidade, como a ID do Microsoft Entra, conectem-se nativamente ao sistema operacional e forneçam serviços de logon seguros aos aplicativos. A autenticação agenciada habilita o aplicativo para todas as operações permitidas pelas credenciais de logon interativas.
Há suporte para contas pessoais e contas corporativas ou de estudante da Microsoft. Em versões do Windows com suporte, a interface do usuário baseada em navegador padrão é substituída por uma experiência de autenticação mais suave, semelhante a aplicativos internos do Windows.
O Linux usa o logon único da Microsoft para Linux como seu agente de autenticação.
Configurar o aplicativo para autenticação agenciada
Para habilitar a autenticação agenciada em seu aplicativo, siga estas etapas:
No portal do Azure, navegue até a ID do Microsoft Entra e selecione registros de aplicativo no menu à esquerda.
Selecione o registro do seu aplicativo e depois Autenticação.
Adicione o URI de redirecionamento apropriado ao registro do aplicativo por meio de uma configuração de plataforma:
Em Configurações da plataforma, selecione + Adicionar uma plataforma.
Em Configurar plataformas, selecione o bloco do seu tipo de aplicativo (plataforma) para definir suas configurações, como aplicativos móveis e de área de trabalho.
Em URIs de redirecionamento personalizado, insira o seguinte URI de redirecionamento para sua plataforma:
Platform URI de redirecionamento Windows 10+ ou WSL ms-appx-web://Microsoft.AAD.BrokerPlugin/{your_client_id}macOS msauth.com.msauth.unsignedapp://authpara aplicativos sem sinal
msauth.{bundle_id}://authpara aplicativos assinadosLinux https://login.microsoftonline.com/common/oauth2/nativeclientSubstitua
{your_client_id}ou{bundle_id}pela ID do aplicativo (cliente) do painel Visão Geral do registro do aplicativo.Selecione Configurar.
Para saber mais, consulte Adicionar um URI de redirecionamento a um registro de aplicativo.
De volta ao painel Autenticação, em Configurações avançadas, selecione Sim para Permitir fluxos de clientes públicos.
Selecione Salvar para aplicar as alterações.
Para autorizar o aplicativo para recursos específicos, navegue até o recurso em questão, selecione Permissões de API e habilite o Microsoft Graph e outros recursos que você deseja acessar.
Importante
Você também deve ser o administrador do seu locatário para dar consentimento ao seu aplicativo ao fazer logon pela primeira vez.
Atribuir funções
Para executar o código do aplicativo com êxito com a autenticação agenciada, conceda permissões à sua conta de usuário usando o RBAC (controle de acesso baseado em função) do Azure. Atribua uma função apropriada à sua conta de usuário para o serviço relevante do Azure. Por exemplo:
- Armazenamento de Blobs do Azure: atribuir a função colaborador de dados da conta de armazenamento .
- Azure Key Vault: atribua a função Key Vault Secrets Officer .
Se um aplicativo for especificado, ele deverá ter permissões de API definidas para user_impersonation no Access Azure Storage (etapa 6 na seção anterior). Essa permissão de API permite que o aplicativo acesse o armazenamento do Azure em nome do usuário conectado depois que o consentimento for concedido durante a entrada.
Implementar o código
A biblioteca de Identidade do Azure dá suporte à autenticação agenciada usando InteractiveBrowserCredential. Por exemplo, para usar InteractiveBrowserCredential em um aplicativo de console Node.js para autenticar no Azure Key Vault com o SecretClient, siga estas etapas:
Instale os pacotes @azure/identity e @azure/identity-broker :
npm install @azure/identity @azure/identity-brokerCrie uma instância do InteractiveBrowserCredential usando opções de agente e registre o plug-in do agente nativo:
import { useIdentityPlugin, InteractiveBrowserCredential } from "@azure/identity"; import { nativeBrokerPlugin } from "@azure/identity-broker"; // Register the native broker plugin for brokered authentication useIdentityPlugin(nativeBrokerPlugin); // Use InteractiveBrowserCredential with broker for interactive or silent authentication // On Windows: Uses Windows Authentication Manager (WAM) - you'll be prompted to sign in // On macOS: Opens a browser window for authentication, since the broker flow isn't currently supported. // On Linux: Uses Microsoft Single Sign-on (SSO) for Linux. const credential = new InteractiveBrowserCredential({ brokerOptions: { enabled: true, useDefaultBrokerAccount: true, // For Node.js console apps, we need to provide an empty buffer for parentWindowHandle parentWindowHandle: new Uint8Array(0), }, });
Dica
Exiba o código de aplicativo de exemplo completo no repositório GitHub do SDK do Azure para JavaScript.
No exemplo anterior, a propriedade useDefaultBrokerAccount é definida como true, que opta por um fluxo de autenticação silenciosa e agenciado com a conta do sistema padrão. Dessa forma, o usuário não precisa selecionar repetidamente a mesma conta. Se a autenticação silenciosa e agenciada falhar ou useDefaultBrokerAccount estiver definida como false, InteractiveBrowserCredential retornará à autenticação interativa e agenciada.
A captura de tela a seguir mostra a experiência de autenticação interativa e agenciada alternativa:
O vídeo a seguir mostra a experiência de autenticação interativa e agenciada alternativa: