ステージ 2: MSAL の前提条件とセットアップ

Intune App SDK は、認証と条件付き起動シナリオに Microsoft 認証ライブラリ を使用します。 また、MSAL を使用して、デバイス登録シナリオを使用せずに管理するために、MAM サービスにユーザー ID を登録します。

注:

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

ステージの目標

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

Microsoft Entra アプリの登録を設定して構成する

MSAL では、アプリに付与されたトークンのセキュリティを保証するために、アプリMicrosoft Entra ID で登録し、一意のクライアント ID とリダイレクト URI を作成する必要があります。 アプリケーションが独自の認証に MSAL を既に使用している場合は、アプリに関連付けられているMicrosoft Entra アプリ登録/クライアント ID/リダイレクト URI が既に存在する必要があります。

アプリで MSAL がまだ使用されていない場合は、Microsoft Entra ID でアプリ登録を構成し、Intune SDK で使用するクライアント ID とリダイレクト URI を指定する必要があります。

アプリが現在 ADAL を使用してユーザーを認証している場合は、アプリを ADAL から MSAL に移行する方法の詳細については、「 iOS および macOS 用 の MSAL にアプリケーションを移行する」を参照してください。

アプリは 、MSAL の最新リリースにリンクすることをお勧めします。

インストール セクションに従って、アプリに MSAL バイナリを配置します。

MSAL の構成

[構成] セクションに従って MSAL を構成します。 構成セクションのすべての手順に従っていることを確認します。 アプリが既に Microsoft Entra ID に登録されている場合は、手順 1 を無視します。

以下のポイントには、MSAL を構成してリンクするための追加情報が含まれています。 アプリケーションに適用される場合は、次の手順に従います。

  • アプリにキーチェーンアクセス グループが定義されていない場合は、アプリのバンドル ID を最初のグループとして追加します。
  • キーチェーン アクセス グループに追加com.microsoft.adalcacheして、MSAL シングル サインオン (SSO) を有効にします。
  • MSAL 共有キャッシュ キーチェーン グループを明示的に設定する場合は、 が に<appidprefix>.com.microsoft.adalcache設定されていることを確認します。 オーバーライドしない限り、MSAL はこれを設定します。 置き換えるcom.microsoft.adalcacheカスタム キーチェーン グループを指定する場合は、 キー ADALCacheKeychainGroupOverrideを使用して、IntuneMAMSettings の Info.plist ファイルで を指定します。

Intune App SDK の MSAL 設定を構成する

Microsoft Entra ID でアプリケーションのアプリ登録が構成されたら、認証時にアプリ登録の設定を使用するように Intune App SDK を Microsoft Entra ID に対して構成できます。 次 の設定の設定については、「Intune App SDK の設定を構成 する」を参照してください。

  • ADALClientId
  • ADALAuthority
  • ADALRedirectUri
  • ADALRedirectScheme
  • ADALCacheKeychainGroupOverride

次の構成が必要です。

  1. プロジェクトの Info.plist ファイルの IntuneMAMSettings ディクショナリのキー名 ADALClientIdで、MSAL 呼び出しに使用するクライアント ID を指定します。

  2. 手順 1 で構成したクライアント ID にマップするMicrosoft Entra アプリの登録が、単一のMicrosoft Entra テナントでのみ使用するように構成されている場合は、アプリケーションの Info.plist ファイル内の IntuneMAMSettings ディクショナリの下にキーを構成ADALAuthorityします。 Intune モバイル アプリケーション管理サービスのトークンを取得するために MSAL によって使用されるMicrosoft Entra機関を指定します。

  3. また、キー名ADALRedirectUriを持つ IntuneMAMSettings ディクショナリの下に、MSAL 呼び出しに使用するリダイレクト URI を指定します。 または、アプリケーションのリダイレクト URI の形式scheme://bundle_idが である場合は、代わりに を指定ADALRedirectSchemeすることもできます。

    または、アプリは実行時にこれらのMicrosoft Entra設定をオーバーライドできます。 これを行うには、クラスに aadAuthorityUriOverrideaadClientIdOverride、および aadRedirectUriOverride プロパティを IntuneMAMSettings 設定するだけです。

  4. Intune Mobile App Management (MAM) サービスに iOS アプリのアクセス許可を付与する手順に従っていることを確認します。 Intune SDK の 概要ガイドの「アプリに IntuneMobile App Management サービスへのアクセス権を付与する」の手順を使用します。

    注:

    アプリ保護ポリシーがマネージド デバイスに関連する場合は、Intune が統合されたアプリケーションのアプリ構成プロファイルを作成する必要もあります。

    Info.plist アプローチは、静的であり、実行時に決定する必要がないすべての設定に推奨されます。 実行時にクラス プロパティに IntuneMAMSettings 割り当てられた値は、Info.plist で指定された対応する値よりも優先され、アプリの再起動後も保持されます。 SDK は、ユーザーが登録解除されるか、値がクリアまたは変更されるまで、ポリシー チェックインに引き続き使用します。

アプリによって開始される認証に MSAL を使用する場合の特別な考慮事項

アプリケーションでは、アプリによって開始される MSAL 対話型認証操作に対して、SFSafariViewController、SFAuththenticationSession、または ASWebAuthenticationSession を Web ビューとして使用しないことをお勧めします。 既定では、MSAL は ASWebAuthenticationSession を使用するため、アプリ開発者は Webview の種類を WKWebView に明示的に設定 する必要があります。 何らかの理由で、アプリで対話型 MSAL 認証操作に WKWebView 以外の Webview 型を使用する必要がある場合は、アプリケーションの Info.plist のディクショナリの下IntuneMAMSettingsにも にtrue設定SafariViewControllerBlockedOverrideする必要があります。

警告

これにより、Intune の SafariViewController フックがオフになり、認証セッションが有効になります。 これにより、アプリケーションが SafariViewController を使用して企業データを表示する場合、アプリ内の他の場所でデータ リークが発生するリスクが発生するため、アプリケーションはこれらの Webview の種類のいずれにも企業データを表示しないようにします。

終了条件

  • Microsoft Entraアプリの登録ページでアプリを登録しましたか?
  • MSAL をアプリケーションに統合しましたか?
  • リダイレクト URI を生成し、MSAL 構成ファイルに設定することで、ブローカー認証を有効にしましたか?
  • IntuneMAMSettings ディクショナリの MSAL に必要な構成情報が、Microsoft Entra アプリ登録の構成情報と一致していることを確認しましたか?

FAQ

ADAL はどうですか?

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

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

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

次の手順

上記のすべての 終了条件 を完了したら、 iOS アプリへのステージ 3: Intune SDK の統合に進みます