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

O método de autenticação de código QR permite que os trabalhadores da linha de frente entrem com rapidez e facilidade em aplicativos em dispositivos compartilhados. Os usuários podem usar 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 entrada na Web de 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 usuários selecionam Opções de entrada>Entrar em uma organização>e entrar com um código QR. Você pode otimizar a experiência de login com código QR fornecendo o ponto de acesso na sua página de login, eliminando dois cliques do usuário. Para aproveitar o 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 MSAL (Biblioteca de Autenticação da Microsoft) para iOS e macOS.
  • O Administrador de Política de Autenticação configura o método de autenticação no Microsoft Entra ID.

Configurar 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ê pode chamar a getDeviceInformationWithParameters API no MSAL para receber o MSALDeviceInformation objeto. Nesse objeto, um novo sinalizador está disponível para refletir a autenticação de código QR configurada pelo administrador na configuração de extensão de SSO (logon único). O snippet de código a seguir mostra como recuperar o método de autenticação preferencial:


@property (nonatomic, readonly) MSALPreferredAuthMethod configuredPreferredAuthMethod; 

MSALPreferredAuthMethod é uma enumeração que descreve os diferentes métodos de autenticação disponíveis. A configuredPreferredAuthMethod propriedade permite que você recupere o método de autenticação preferencial para o aplicativo. Atualmente, o código QR possui um valor de enumeração privado definido como 1. Quando liberado como disponibilidade geral (GA), é MSALPreferredAuthMethodQRPIN.

MSALInteractiveTokenParameters também defina um novo parâmetro opcional do tipo MSALPreferredAuthMethod: preferredAuthMethod. Quando esse parâmetro é definido para autenticação de código QR, a interface do usuário de entrada interativa resultante leva o usuário diretamente para a página de entrada de autenticação de código QR. O snippet de código a seguir mostra como configurar seu aplicativo para usar a autenticação de código QR:

MSALWebviewParameters *webParameters = [[MSALWebviewParameters alloc] initWithAuthPresentationViewController:viewController]; 

     

MSALInteractiveTokenParameters *interactiveParams = [[MSALInteractiveTokenParameters alloc] initWithScopes:scopes webviewParameters:webParameters]; 

 

interactiveParams.preferredAuthMethod = 1; //Currently need to use the private enum value 

 

[application acquireTokenWithParameters:interactiveParams completionBlock:^(MSALResult *result, NSError *error) { 

    // When token acquisition completes 

}]; 

Esse trecho de código configura e adquire um token usando a MSAL em um aplicativo iOS, focando na autenticação via código QR. Ele inicializa MSALWebviewParameters com um controlador de visualização para a visualização da web de autenticação e cria MSALInteractiveTokenParameters com os escopos e parâmetros web necessários. O método de autenticação preferencial é definido como autenticação de código QR.

Por fim, chama acquireTokenWithParameters na instância MultipleAccountPublicClientApplication, usando os parâmetros configurados e um bloco de finalização para lidar com o resultado. Essa configuração garante que o fluxo de autenticação use o método de autenticação de código QR para autenticação segura e conveniente do usuário.

É recomendável chamar a getDeviceInformationWithParameters API no MSAL para descobrir se o administrador configurou o método de autenticação de código QR. Se tiver, um aplicativo poderá atualizar sua interface do usuário para indicar que o método de autenticação de código QR está disponível como uma opção de entrada.

Por padrão, a autenticação de código QR solicita aos usuários permissão de câmera sempre que precisarem usar a câmera para verificar um código QR.

Captura de tela de como permitir o acesso à câmera no iOS.

Os administradores podem suprimir esse comportamento e ignorar a solicitação de permissão da câmera. Para configurar a solicitação, defina a seguinte configuração de extensão de SSO:

  • Chave: suppress_camera_consent
  • Tipo: Número inteiro
  • Valor: 1 ou 0. Por padrão, esse valor é definido como 0.

O local é o mesmo em que você pode configurar preferred_auth_method. Para obter mais informações sobre a configuração de extensão de SSO, consulte Mais opções de configuração para o plug-in do Microsoft Enterprise SSO para dispositivos Apple.

Note

O aviso de consentimento para uso da câmera é exibido uma vez devido às exigências do funcionamento do sistema operacional.