共用方式為


在 Android 應用程式中設定優化的 QR 代碼驗證體驗

QR 代碼驗證方法可讓前線工作者快速且輕鬆地在共用裝置上的應用程式中登入。 使用者可以使用其系統管理員提供的唯一 QR 代碼,並輸入 PIN 以登入,而不需要輸入使用者名稱和密碼。

您可以使用 login.microsoft.com 提供的 QR 代碼 Web 登入體驗。 此用戶進入點不需要任何開發人員變更。 使用者選取 [登入] 選項>登入組織>使用 QR 代碼登入。 您可以藉由在登入頁面提供進入點,以優化 QR 代碼登入體驗,同時消除兩次用戶點選。 若要利用 QR 代碼驗證方法,應用程式開發人員和 驗證原則管理員 會共同合作:

  • 應用程式開發人員會使用適用於 Android 的 Microsoft 驗證庫,在其應用程式中整合 QR 代碼身份驗證的優化進入點。
  • 驗證原則管理員會在 Microsoft Entra ID 中設定 驗證方法

設定您的應用程式以使用 QR 代碼驗證

若要將您的應用程式設定為使用 QR 代碼驗證,您必須在 物件中PreferredAuthMethod將 設定AcquireTokenParameters為 QR。 下列代碼段示範如何設定您的應用程式以使用 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(); 

PreferredAuthMethod設定為 PreferredAuthMethod.QR,指定應該使用 QR 代碼驗證方法。 此方法可讓用戶藉由掃描 QR 碼並輸入 PIN 碼來進行驗證。

設定 AcquireTokenParameters 物件之後,您可以呼叫 acquireToken 方法來啟動驗證程式。 下列代碼段示範如何使用AcquireTokenParameters物件,取得權杖:

// 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);

這會使用指定的參數來啟動令牌獲取過程,包括優先選擇的 QR 碼驗證方法。

取得慣用的驗證方法

QR 程式碼驗證方法是由驗證原則系統管理員透過 Microsoft Authenticator 應用程式上 受管理 Android Enterprise 裝置的應用程式 設定原則所設定,設定 preferred_auth_method 等於 qrpin

顯示如何設定 QR 代碼驗證的螢幕快照。

您可以在 物件上getPreferredAuthMethod呼叫 mpca 方法,以取得目前帳戶的慣用驗證方法。 下列代碼段示範如何取得目前帳戶的慣用驗證方法:

mpca.getPreferredAuthConfiguration()

方法 getPreferredAuthConfiguration 需要將 Microsoft Authenticator 應用程式安裝在裝置上。 如果未安裝Microsoft Authenticator 應用程式,此方法會傳 None回 。

根據預設,QR 代碼和 PIN 驗證會在使用者每次需要使用相機來掃描 QR 代碼時,提示使用者輸入相機許可權。 不過,系統管理員可以隱藏此行為,並略過要求相機許可權。

顯示 Android QR 代碼和 PIN 驗證提示的螢幕快照。

驗證原則系統管理員會透過 Microsoft Authenticator 應用程式中設置 受管理的 Android Enterprise 裝置的應用程式配置原則,將 sdm_suppress_camera_consent 設定為 true,這類似於設定 preferred_auth_method 的方式。

開啟此設定時:

  • 如果已在OS層級授與相機許可權,應用程式將不會顯示相機同意提示。
  • 使用者將會有更順暢的驗證體驗,而不需要重複的許可權要求。
  • 針對受控裝置,QR 代碼掃描流程會更加簡化。

此設定適用於受管理裝置的企業環境,且IT系統管理員可以預先設定相機許可權。