Partilhar via


Configurar a experiência otimizada de autenticação de código QR no aplicativo Android

O método de autenticação de código QR permite que os trabalhadores da linha de frente entrem de forma rápida e fácil em aplicativos em dispositivos compartilhados. Os usuários podem usar o código QR exclusivo fornecido por seus administradores e inserir seu PIN para entrar, eliminando a necessidade de inserir nomes de usuário e senhas.

Você pode usar a experiência de login na web com código QR disponível em login.microsoft.com. Esse ponto de entrada do usuário não requer nenhuma alteração do desenvolvedor. Os utilizadores selecionam Opções de início de sessão>Iniciar sessão numa organização>Iniciar sessão com um código QR. Pode otimizar a experiência de início de sessão com código QR fornecendo o ponto de entrada na sua página de início de sessão, eliminando dois cliques do utilizador. Para tirar proveito do método de autenticação de código QR, os desenvolvedores de aplicativos e o Administrador de Política de Autenticação trabalham juntos:

  • Os desenvolvedores de aplicativos integram o ponto de entrada otimizado da autenticação de código QR em seu aplicativo usando a Biblioteca de Autenticação da Microsoft para Android (MSAL).
  • O Administrador da Política de Autenticação configura o método de autenticação no Microsoft Entra ID.

Configure seu aplicativo para usar a autenticação de código QR

Para configurar seu aplicativo para usar a autenticação de código QR, você precisa definir o PreferredAuthMethod para QR no AcquireTokenParameters objeto. O trecho de código a seguir mostra como configurar seu aplicativo para usar a autenticação de código QR:

final AcquireTokenParameters acquireTokenParameters = 
    new AcquireTokenParameters.Builder()
    .startAuthorizationFromActivity(activity)
    .withLoginHint(requestOptions.getLoginHint())
     .forAccount(requestOptions.getAccount())
     .withPrompt(requestOptions.getPrompt())
     .withPreferredAuthMethod(PreferredAuthMethod.QR)
     .withCallback(getAuthenticationCallback(callback))
     .build(); 

O PreferredAuthMethod é definido como PreferredAuthMethod.QR, que especifica que o método de autenticação de código QR deve ser usado. Este método permite aos utilizadores autenticarem-se digitalizando um código QR e introduzindo o seu pino.

Depois de configurar o AcquireTokenParameters objeto, você pode chamar o acquireToken método para iniciar o processo de autenticação. O trecho de código a seguir mostra como adquirir um token usando o AcquireTokenParameters objeto:

// Create the MultipleAccountPublicClientApplication instance with the given configuration
final MultipleAccountPublicClientApplication mpca = new MultipleAccountPublicClientApplication(config);

// Pass the acquireTokenParameters object to the acquireToken function
mpca.acquireToken(acquireTokenParameters);

Isso inicia o processo de aquisição de token usando os parâmetros especificados, incluindo o método de autenticação de código QR preferido.

Obter método de autenticação preferido

O método de autenticação de código QR é configurado pelo Administrador de Política de Autenticação por meio de uma política de configuração de aplicativo para dispositivos Android Enterprise gerenciados no Aplicativo Microsoft Authenticator, configuração preferred_auth_method igual a qrpin.

Captura de tela mostrando como configurar a autenticação de código QR.

Você pode obter o método de autenticação preferencial para a conta atual chamando o método getPreferredAuthMethod no objeto mpca. O trecho de código a seguir mostra como obter o método de autenticação preferencial para a conta atual:

mpca.getPreferredAuthConfiguration()

O getPreferredAuthConfiguration método requer que o aplicativo Microsoft Authenticator seja instalado no dispositivo. Se o aplicativo Microsoft Authenticator não estiver instalado, o método retornará None.

Por padrão, o código QR e a autenticação PIN solicitam aos usuários permissão da câmera toda vez que precisarem usar a câmera para escanear um código QR. No entanto, os administradores podem suprimir esse comportamento e ignorar a solicitação de permissão da câmera.

Captura de tela mostrando o código QR do Android e o prompt de autenticação do PIN.

Isso é configurado pelo Administrador de Política de Autenticação por meio de uma política de configuração de aplicativo para dispositivos Android Enterprise gerenciados no Aplicativo Microsoft Authenticator, configuração sdm_suppress_camera_consent igual a true, semelhante à forma como o preferred_auth_method está configurado.

Quando esta definição está ativada:

  • O aplicativo não mostrará o prompt de consentimento da câmera se as permissões da câmera já tiverem sido concedidas no nível do sistema operacional.
  • Os usuários terão uma experiência de autenticação mais suave sem solicitações de permissão repetidas.
  • O fluxo de leitura de código QR será mais simplificado para dispositivos gerenciados.

Essa configuração é útil em ambientes corporativos onde os dispositivos são gerenciados e as permissões da câmera podem ser pré-configuradas pelos administradores de TI.