Microsoft Entra アプリケーション プロキシは、認証にヘッダーを使用するアプリケーションへのシングル サインオン (SSO) アクセスをネイティブにサポートします。 アプリケーションに必要なヘッダー値は、Microsoft Entra ID で構成します。 ヘッダー値は、アプリケーション プロキシ経由でアプリケーションに送信されます。 アプリケーション プロキシでヘッダー ベースの認証にネイティブ サポートを使用する利点は次のとおりです。
オンプレミス アプリへのリモート アクセスを簡素化する - アプリケーション プロキシにより、既存のリモート アクセス アーキテクチャが簡略化されます。 これらのアプリへの仮想プライベート ネットワーク (VPN) アクセスを置き換えます。 認証用のオンプレミス ID ソリューションへの依存関係を削除します。 ユーザーのエクスペリエンスを合理化し、企業アプリケーションを使用しても何の変化も気付かない。 ユーザーは、任意のデバイスのどこからでも作業できます。
追加のソフトウェアやアプリへの変更はありません - 既存のプライベート ネットワーク コネクタを使用します。 追加のソフトウェアは必要ありません。
使用できる属性と変換の範囲が広い - 使用できるすべてのヘッダー値は、Microsoft Entra ID によって発行される標準の要求に基づいています。 Security Assertion Markup Language (SAML) または OpenID Connect (OIDC) アプリケーションの要求を構成するために使用できるすべての属性と変換は、ヘッダー値としても使用できます。
[前提条件]
アプリケーション プロキシを有効にし、アプリケーションに直接ネットワーク アクセスできるコネクタをインストールします。 詳細については、 アプリケーション プロキシを使用したリモート アクセス用のオンプレミス アプリケーションの追加に関するページを参照してください。
サポートされている機能
次の表に、ヘッダーベースの認証アプリケーションに必要な一般的な機能を示します。
要件 | 説明 |
---|---|
フェデレーション SSO | 事前認証モードでは、すべてのアプリケーションが Microsoft Entra 認証で保護され、ユーザーはシングル サインオンを使用します。 |
[リモート アクセス] | アプリケーション プロキシは、アプリへのリモート アクセスを提供します。 ユーザーは、外部の Uniform Resource Locator (URL) を使用して、任意の Web ブラウザーでインターネットからアプリケーションにアクセスします。 アプリケーション プロキシは、一般的な企業アクセスを目的としたものではありません。 一般的な企業アクセスについては、「Microsoft Entra Private Access」を参照してください。 |
ヘッダーベースの統合 | アプリケーション プロキシは、Microsoft Entra ID との SSO 統合を処理し、ID またはその他のアプリケーション データを HTTP ヘッダーとしてアプリケーションに渡します。 |
アプリケーション認証 | 一般的なポリシーは、アクセスするアプリケーション、ユーザーのグループ メンバーシップ、およびその他のポリシーに基づいて指定されます。 Microsoft Entra ID では、ポリシーは条件付きアクセスを使用して実装されます。 アプリケーション認可ポリシーは、最初の認証要求にのみ適用されます。 |
ステップアップ認証 | ポリシーは、たとえば機密性の高いリソースにアクセスするために、認証を強制的に追加するように定義されています。 |
きめ細かな認可 | URL レベルでのアクセス制御を提供します。 追加されたポリシーは、アクセス対象の URL に基づいて適用できます。 アプリ用に構成された内部 URL は、ポリシーが適用されるアプリのスコープを定義します。 最もきめ細かなパスに対して構成されているポリシーが適用されます。 |
注
この記事では、アプリケーション プロキシを使用したヘッダー ベースの認証アプリケーションと Microsoft Entra ID の間の接続について説明します。これは推奨されるパターンです。 別の方法として、PingAccess と Microsoft Entra ID を使用してヘッダーベースの認証を有効にする統合パターンがあります。 詳細については、「 アプリケーション プロキシと PingAccess を使用したシングル サインオンのヘッダー ベースの認証」を参照してください。
動作方法
- 管理者は、Microsoft Entra 管理センターで、アプリケーションが必要とする属性マッピングをカスタマイズします。
- アプリケーション プロキシは、ユーザーが Microsoft Entra ID を使用して認証されることを保証します。
- アプリケーション プロキシ クラウド サービスは、必要な属性を認識します。 そのためサービスでは、認証時に受信した ID トークンから、対応する要求がフェッチされます。 その後、サービスは、コネクタへの要求の一部として、値を必要な HTTP ヘッダーに変換します。
- その後、要求がコネクタに渡され、バックエンド アプリケーションに渡されます。
- アプリケーションでは、ヘッダーを受信し、必要に応じてこれらのヘッダーを使用できます。
アプリケーション プロキシを使用してアプリケーションを発行する
アプリケーション プロキシを使用したアプリケーションの発行に関するページで説明されている手順に従って 、アプリケーションを発行します。
- 内部 URL 値によって、アプリケーションのスコープが決まります。 アプリケーションのルート パスで内部 URL 値を構成すると、ルートの下にあるすべてのサブ パスが同じヘッダーとアプリケーション構成を受け取ります。
- 新しいアプリケーションを作成し、構成したアプリケーションよりもきめ細かなパスに対して、異なるヘッダー構成またはユーザー割り当てを設定します。 新しいアプリケーションでは、必要な特定のパスを含む内部 URL を構成してから、この URL に必要な特定のヘッダーを構成します。 アプリケーション プロキシは、構成設定をアプリケーションの最も細かいパス セットに常に一致させます。
事前認証方法として [Microsoft Entra ID] を選択します。
[ユーザーとグループ] に移動し、適切なユーザーとグループを割り当てることで、テスト ユーザーを割り当てます。
ブラウザーを開き、アプリケーション プロキシ設定から 外部 URL に移動します。
アプリケーションに接続できることを確認します。 接続できる場合でも、ヘッダーが構成されていないため、まだアプリにはアクセスできません。
シングル サインオンの設定
ヘッダー ベースのアプリケーションのシングル サインオンを開始する前に、プライベート ネットワーク コネクタをインストールします。 コネクタは、ターゲット アプリケーションにアクセスできる必要があります。 詳細については、「 チュートリアル: Microsoft Entra アプリケーション プロキシ」を参照してください。
- アプリケーションがエンタープライズ アプリケーションの一覧に表示されたら、それを選択して [シングル サインオン] を選択します。
- シングル サインオン モードを [ヘッダーベース] に設定します。
- 基本構成では、Microsoft Entra ID が既定値として選択されています。
- ヘッダーの編集アイコン を選択して アプリケーションに送信するヘッダーを構成します。
-
[新しいヘッダーの追加] を選択します。 ヘッダーの名前を指定し、[ 属性 ] または [ 変換] を選択し、アプリケーションで必要なヘッダーをドロップダウンから選択します。
- 使用可能な属性の一覧の詳細については、要求のカスタマイズに関するページの「属性」を参照してください。
- 使用可能な変換の一覧の詳細については、要求のカスタマイズに関するページの「要求の変換」を参照してください。
- グループ ヘッダーを追加できます。 グループを値として構成することの詳細については、アプリケーションに対するグループ要求を構成することに関するページを参照してください。
- 保存 を選択します。
アプリをテストする
アプリケーションが実行され、使用可能になりました。 アプリをテストするには:
- 新しいブラウザーまたはプライベート ブラウザー ウィンドウを開いて、以前にキャッシュされたヘッダーをクリアします。
- 外部 URL に移動します。 この設定は、アプリケーション プロキシ設定の 外部 URL として一覧表示されます。
- サインインには、アプリに割り当てたテスト アカウントを使用します。
- SSO を使用してアプリケーションを読み込んでサインインできることを確認します。
考慮事項
- アプリケーション プロキシは、オンプレミスまたはプライベート クラウド上のアプリへのリモート アクセスを提供します。 アプリケーション プロキシは、目的のアプリケーションと同じネットワーク内から送信されるトラフィックには推奨されません。
- ヘッダーベースの認証アプリケーションへのアクセスは、コネクタまたはその他の許可されたヘッダーベースの認証ソリューションからのトラフィックのみに制限する必要があります。 アクセス制限は、通常、アプリケーション サーバーのファイアウォールまたは IP 制限を使用して実行されます。