QR コード認証方法を使用すると、現場担当者は共有デバイス上のアプリにすばやく簡単にサインインできます。 ユーザーは、管理者が提供する一意の QR コードを使用し、PIN を入力してサインインできるため、ユーザー名とパスワードを入力する必要がなくなります。
login.microsoft.com で利用できる QR コード Web サインイン エクスペリエンスを使用できます。 このユーザー エントリ ポイントでは、開発者の変更は必要ありません。 ユーザーが [サインイン オプション] を選択>組織にサインイン>QR コードでサインインします。 サインイン ページにエントリ ポイントを指定することで、QR コードのサインイン エクスペリエンスを最適化し、ユーザーが 2 回クリックする必要がなくなります。 QR コード認証方法を利用するために、アプリ開発者と 認証ポリシー管理者 は連携して作業します。
- アプリ開発者は、Android 用 Microsoft Authentication Library (MSAL) を使用して、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 コードをスキャンし、自分のピンを入力して認証できます。
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と同じ設定になります。
getPreferredAuthMethod オブジェクトで mpca メソッドを呼び出すことで、現在のアカウントの優先認証方法を取得できます。 次のコード スニペットは、現在のアカウントの優先認証方法を取得する方法を示しています。
mpca.getPreferredAuthConfiguration()
getPreferredAuthConfiguration方法では、Microsoft Authenticator アプリをデバイスにインストールする必要があります。 Microsoft Authenticator アプリがインストールされていない場合、メソッドは Noneを返します。
カメラの同意プロンプトを表示しない
既定では、QR コードと PIN 認証は、カメラを使用して QR コードをスキャンする必要があるたびに、ユーザーにカメラのアクセス許可を求めます。 ただし、管理者はこの動作を抑制し、カメラのアクセス許可の要求をスキップできます。
これは、Microsoft Authenticator アプリの管理対象 Android Enterprise デバイス用のアプリ構成ポリシーを通じて認証ポリシー管理者によって構成され、をsdm_suppress_camera_consentに設定する点で、trueの構成方法と同様です。
この設定が有効な場合:
- OS レベルでカメラのアクセス許可が既に付与されている場合、アプリにはカメラの同意プロンプトは表示されません。
- ユーザーは、アクセス許可要求を繰り返すことなく、よりスムーズな認証エクスペリエンスを実現できます。
- QR コードのスキャン フローは、マネージド デバイスに対してより合理化されます。
この構成は、デバイスが管理され、IT 管理者がカメラのアクセス許可を事前に構成できるエンタープライズ環境で役立ちます。