Android 用 Intune App SDK - MSAL の前提条件について

Microsoft Intune App SDK for Android を使用すると、Intune アプリ保護ポリシー ( APP または MAM ポリシーとも呼ばれます) をネイティブの Java/Kotlin Android アプリに組み込むことができます。 Intune で管理されるアプリケーションは、Intune App SDK と統合されたアプリケーションです。 Intune 管理者は、Intune がアプリをアクティブに管理するときに、Intune で管理されるアプリにアプリ保護ポリシーを簡単に展開できます。

注:

このガイドは、いくつかの異なるステージに分かれています。 まず、「 ステージ 1: 統合を計画する」を確認します。

ステージ 2: MSAL の前提条件

ステージの目標

  • Microsoft Entra ID を使用してアプリケーションを登録します。
  • MSAL を Android アプリケーションに統合します。
  • アプリケーションが、保護されたリソースへのアクセスを許可するトークンを取得できることを確認します。

背景

Microsoft 認証ライブラリ (MSAL) を使用すると、Microsoft Entra ID と Microsoft アカウントをサポートすることで、アプリケーションで Microsoft Cloud を使用できるようになります

MSAL Intune に固有ではありません。 Intune は Microsoft Entra ID に依存しています。すべての Intune ユーザー アカウントは Microsoft Entra アカウントです。 その結果、Intune App SDK を統合する Android アプリケーションの大部分は、前提条件として MSAL を統合する必要があります。

SDK ガイドのこのステージでは、Intune に関連する MSAL 統合プロセスの概要を説明します。 リンクされた MSAL ガイドに完全に従ってください

Intune App SDK 統合プロセスを簡略化するために、 Android アプリ開発者は、Intune App SDK をダウンロードする前に MSAL を完全に統合してテストすることを強くお勧めします。 Intune App SDK 統合プロセス では、 MSAL トークンの取得に関するコードの変更が必要です。 アプリの元のトークン取得の実装が期待どおりに動作することを既に確認している場合は、Intune 固有のトークン取得の変更をテストする方が簡単になります。

Microsoft Entra ID の詳細については、「Microsoft Entra ID とは」を参照してください。

MSAL の詳細については、 MSAL WikiMSAL ライブラリの一覧を参照してください。

Microsoft Entra ID を使用してアプリケーションを登録する

MSAL を Android アプリケーションに統合する前に、すべてのアプリを Microsoft ID プラットフォームに登録する必要があります。 「クイック スタート: Microsoft ID プラットフォーム - Microsoft ID プラットフォームにアプリを登録する」の手順に従います。 これにより、アプリケーションの クライアント ID が 生成されます。

次に、手順に従って 、アプリに Intune Mobile App Management サービスへのアクセス権を付与します

Microsoft 認証ライブラリ (MSAL) を構成する

まず、 GitHub の MSAL リポジトリにある MSAL 統合ガイドライン、具体的には MSAL を使用するセクションを参照してください。

このガイドでは、次の方法について説明します。

  • ANDROID アプリケーションに依存関係として MSAL を追加します。
  • MSAL 構成ファイルを作成します。
  • アプリケーションの AndroidManifest.xmlを構成します。
  • トークンを取得するコードを追加します。

ブローカー認証

シングル サインオン (SSO) を使用すると、ユーザーは資格情報を 1 回だけ入力でき、これらの資格情報はアプリケーション間で自動的に機能します。 MSAL では、アプリスイート全体で SSO を有効にすることができます。ブローカー アプリケーション (Microsoft Authenticator または Microsoft Intune ポータル サイト) を使用すると、デバイス全体で SSO を拡張できます。 条件付きアクセスには、ブローカー認証も必要です。 ブローカー認証の詳細については、「 MSAL を使用して Android でアプリ間 SSO を有効にする 」を参照してください。

このガイドでは、上記のリンクの手順に従って、アプリケーション内でブローカー認証を有効にしていることを前提としています。特に 、ブローカーのリダイレクト URI を生成 し、構成に ブローカーを使用するように MSAL を構成 し、テスト用 にブローカー統合を確認 します。

アプリケーションでブローカー認証を有効にしていない場合は、Intune 固有の MSAL 構成に特に注意してください

Intune 固有の MSAL 環境の構成

既定では、Intune は Microsoft Entra パブリック環境からトークンを要求します。 アプリケーションでソブリン クラウドなどの既定以外の環境が必要な場合は、次の設定をアプリケーションの AndroidManifest.xmlに追加する必要があります。 設定すると、入力された Microsoft Entra 機関がアプリケーションのトークンを発行します。 これにより、Intune の認証ポリシーが適切に適用されます。

<meta-data
    android:name="com.microsoft.intune.mam.aad.Authority"
    android:value="https://AAD authority/" />

注意

ほとんどのアプリでは、Authority パラメーターを設定しないでください。 さらに、MSAL を統合しないアプリケーションでは、マニフェストにこのプロパティを含 めないでください

Intune 固有以外の MSAL 構成オプションの詳細については、「 Android Microsoft 認証ライブラリの構成ファイル」を参照してください。

ソブリン クラウドの詳細については、「 国内クラウド環境での MSAL の使用」を参照してください。

終了条件

  • MSAL をアプリケーションに統合しましたか?
  • リダイレクト URI を生成し、MSAL 構成ファイルに設定することで、ブローカー認証を有効にしましたか?
  • AndroidManifest.xmlで Intune 固有の MSAL 設定を構成しましたか?
  • ブローカー認証をテストし、職場アカウントが Android のアカウント マネージャーに追加されていることを確認し、他の Microsoft 365 アプリとの SSO をテストしましたか?
  • 条件付きアクセスを実装した場合、CA の実装を検証するために、デバイス ベースの CA とアプリベースの CA の両方をテストしましたか?

FAQ

ADAL はどうですか?

Microsoft の以前の認証ライブラリ である Azure Active Directory 認証ライブラリ (ADAL)非推奨になりました

アプリケーションが既に ADAL を統合している場合は、「 Microsoft Authentication Library (MSAL) を使用するようにアプリケーションを更新する」を参照してください。 アプリを ADAL から MSAL に移行するには、「 Android ADAL を MSAL に移行する 」と「 ADAL と MSAL の違い」を参照してください。

Intune App SDK を統合する前に、ADAL から MSAL に移行することをお勧めします。

次の手順

上記のすべての 終了条件 を完了したら、 ステージ 3: MAM の概要に進みます。