Partilhar via


InteractiveBrowserCredential Classe

  • java.lang.Object
    • com.azure.identity.InteractiveBrowserCredential

Implementações

public class InteractiveBrowserCredential
implements TokenCredential

A autenticação interativa do navegador é um tipo de fluxo de autenticação oferecido pelo Azure Active Directory (Azure AD) que permite que os usuários entrem em aplicativos e serviços usando um navegador da Web. Esse método de autenticação é comumente usado para aplicativos Web, em que os usuários inserem suas credenciais diretamente em uma página da Web. Com a autenticação interativa do navegador, o usuário navega até um aplicativo Web e é solicitado a inserir suas credenciais de nome de usuário e senha. Em seguida, o aplicativo redireciona o usuário para a página de entrada do Azure AD, na qual é solicitado que ele insira suas credenciais novamente. Depois que o usuário é autenticado com êxito, Azure AD emite um token de segurança que o aplicativo pode usar para autorizar o acesso do usuário aos seus recursos. O InteractiveBrowserCredential autentica interativamente um usuário e adquire um token com o navegador do sistema padrão e oferece uma experiência de autenticação suave, permitindo que um usuário use suas próprias credenciais para autenticar o aplicativo. Quando autenticado, o fluxo oauth2 notifica a credencial do código de autenticação por meio da URL de resposta. Para obter mais informações, consulte a documentação de autenticação interativa do navegador.

Configuração necessária:

Para usar InteractiveBrowserCredential, você precisa registrar um aplicativo no Azure Active Directory com permissões para fazer logon em nome de um usuário. Siga as etapas abaixo para configurar seu aplicativo registrado.

  1. Vá para Azure Active Directory em portal do Azure e localize o registro do aplicativo.
  2. Navegue até a seção Autenticação.
  3. Em URIs redirecionados sugeridos, marcar o URI que termina com /common/oauth2/nativeclient.
  4. Em Tipo de Cliente Padrão, selecione Sim para Tratar o aplicativo como um cliente público.

Essas etapas permitirão que o aplicativo seja autenticado, mas ainda não terá permissão para fazer logon no Active Directory nem acessar recursos em seu nome. Para resolver esse problema, navegue até Permissões de API e habilite o Microsoft Graph e os recursos que você deseja acessar, como o gerenciamento de serviços do Azure, Key Vault e assim por diante. Você também precisa ser o administrador do seu locatário para dar consentimento ao seu aplicativo ao fazer logon pela primeira vez. No redirectUrl(String redirectUrl), uma URL de redirecionamento pode ser especificada. Ele configura a URL de Redirecionamento em que o STS fará o retorno de chamada do aplicativo com o código de segurança. Ele será necessário se uma ID de cliente personalizada for especificada por meio InteractiveBrowserCredentialBuilder#clientId(String) de e deverá corresponder à URL de redirecionamento especificada durante o registro do aplicativo. Você pode adicionar a URL de redirecionamento à subseção URIs de Redirecionamento na seção Autenticação do aplicativo Azure AD registrado.

Exemplo: Constructa InteractiveBrowserCredential

O exemplo de código a seguir demonstra a criação de um InteractiveBrowserCredential, usando o InteractiveBrowserCredentialBuilder para configurá-lo. Por padrão, a credencial tem como destino uma URL de redirecionamento de localhost, para substituir esse comportamento que um redirectUrl(String redirectUrl) pode ser especificado opcionalmente. Depois que essa credencial for criada, ela poderá ser passada para o construtor de muitos dos construtores de clientes do SDK do Azure para Java como o parâmetro "credencial".

TokenCredential interactiveBrowserCredential = new InteractiveBrowserCredentialBuilder()
     .redirectUrl("http://localhost:8765")
     .build();

Resumo do método

Modificador e tipo Método e descrição
reactor.core.publisher.Mono<AuthenticationRecord> authenticate()

Autentica interativamente um usuário por meio do navegador padrão.

reactor.core.publisher.Mono<AuthenticationRecord> authenticate(TokenRequestContext request)

Autentica interativamente um usuário por meio do navegador padrão.

reactor.core.publisher.Mono<AccessToken> getToken(TokenRequestContext request)
AccessToken getTokenSync(TokenRequestContext request)

Métodos herdados de java.lang.Object

Detalhes do método

authenticate

public Mono authenticate()

Autentica interativamente um usuário por meio do navegador padrão.

Returns:

O AuthenticationRecord que pode ser usado para autenticar silenciosamente a conta na execução futura se o cache persistente foi habilitado por meio tokenCachePersistenceOptions(TokenCachePersistenceOptions tokenCachePersistenceOptions) de quando a credencial foi instanciada.

authenticate

public Mono authenticate(TokenRequestContext request)

Autentica interativamente um usuário por meio do navegador padrão.

Parameters:

request - Os detalhes da solicitação de autenticação.

Returns:

O AuthenticationRecord que pode ser usado para autenticar silenciosamente a conta na execução futura se o cache persistente foi configurado por meio tokenCachePersistenceOptions(TokenCachePersistenceOptions tokenCachePersistenceOptions) de quando a credencial foi instanciada.

getToken

public Mono getToken(TokenRequestContext request)

Parameters:

request

getTokenSync

public AccessToken getTokenSync(TokenRequestContext request)

Parameters:

request

Aplica-se a