Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Este artigo lista métodos adicionais que os aplicativos podem usar para autenticar recursos do Azure. Os métodos neste artigo são menos comumente usados; quando possível, recomendamos que você use um dos métodos descritos na autenticação de aplicativos Python no Azure usando a visão geral do SDK do Azure.
Autenticação interativa do navegador
Este método autentica interativamente um aplicativo através de InteractiveBrowserCredential ao recolher credenciais de utilizador no sistema por defeito.
A autenticação interativa do navegador habilita o aplicativo para todas as operações permitidas pelas credenciais de entrada interativas. Como resultado, se você for o proprietário ou administrador de sua assinatura, seu código terá acesso inerente à maioria dos recursos dessa assinatura sem precisar atribuir permissões específicas. Por esse motivo, o uso da autenticação interativa do navegador é desencorajado para qualquer coisa que não seja experimentação.
Habilitar aplicativos para autenticação interativa do navegador
Execute as etapas a seguir para permitir que o aplicativo se autentique por meio do fluxo interativo do navegador. Essas etapas também funcionam para a autenticação de código de dispositivo descrita mais tarde. Seguir este processo é necessário apenas se usar InteractiveBrowserCredential no seu código.
No portal do Azure, navegue até Microsoft Entra ID e selecione Registros de aplicativo no menu à esquerda.
Selecione o registo para a sua aplicação e, em seguida, selecione Autenticação.
Em Configurações avançadas, selecione Sim para Permitir fluxos de clientes públicos.
Selecione Guardar 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. O Microsoft Graph está habilitado por padrão.
Importante
Também tem de ser o administrador do seu locatário para dar consentimento na sua aplicação quando iniciar sessão pela primeira vez.
Se não for possível configurar a opção de fluxo de código do dispositivo no Ative Directory, talvez seja necessário que seu aplicativo seja multilocatário. Para fazer essa alteração, navegue até o painel Autenticação , selecione Contas em qualquer diretório organizacional (em Tipos de conta suportados) e selecione Sim para Permitir fluxos de clientes públicos.
Exemplo usando InteractiveBrowserCredential
O exemplo a seguir demonstra o uso de um InteractiveBrowserCredential para autenticar com o SubscriptionClient:
# Show Azure subscription information
import os
from azure.identity import InteractiveBrowserCredential
from azure.mgmt.resource import SubscriptionClient
credential = InteractiveBrowserCredential()
subscription_client = SubscriptionClient(credential)
subscription = next(subscription_client.subscriptions.list())
print(subscription.subscription_id)
Para obter um controlo mais exato, como a configuração de URIs de redirecionamento, poderá fornecer argumentos específicos a InteractiveBrowserCredential, como redirect_uri.
Autenticação de código de dispositivo
Esse método autentica interativamente um usuário em dispositivos com interface do usuário limitada (normalmente dispositivos sem teclado):
- Quando o aplicativo tenta autenticar, a credencial solicita ao usuário uma URL e um código de autenticação.
- O usuário visita o URL em um dispositivo separado habilitado para navegador (um computador, smartphone, etc.) e insere o código.
- O usuário segue um processo de autenticação normal no navegador.
- Após a autenticação bem-sucedida, o aplicativo é autenticado no dispositivo.
Para obter mais informações, consulte Plataforma de identidade da Microsoft e o fluxo de concessão de autorização de dispositivo OAuth 2.0.
A autenticação de código de dispositivo em um ambiente de desenvolvimento habilita o aplicativo para todas as operações permitidas pelas credenciais de entrada interativas. Como resultado, se você for o proprietário ou administrador de sua assinatura, seu código terá acesso inerente à maioria dos recursos dessa assinatura sem precisar atribuir permissões específicas. No entanto, você pode usar esse método com uma ID de cliente específica, em vez do padrão, para o qual você pode atribuir permissões específicas.