チュートリアル: Oracle JDE への SSO 用に F5 BIG-IP Easy Button を構成する
このチュートリアルでは、F5 BIG-IP Easy Button ガイド付き構成で、Microsoft Entra ID を使用して Oracle JD Edwards (JDE) を保護する方法について学習します。
BIG-IP と Microsoft Entra ID の統合には、次のようなさまざまな利点があります。
- Microsoft Entra 事前認証と条件付きアクセスによるゼロ トラスト ガバナンスの改善
- 「リモート作業を可能にするゼロ トラスト フレームワーク」を参照してください
- 「条件付きアクセスとは」を参照してください。
- Microsoft Entra ID と BIG-IP 公開サービスの間のシングル サインオン (SSO)
- Microsoft Entra 管理センターから ID とアクセスを管理します
詳細情報:
シナリオの説明
このチュートリアルでは、保護されたコンテンツへのアクセスを管理するために HTTP 承認ヘッダーを使用する Oracle JDE アプリケーションを使用します。
レガシ アプリケーションには、Microsoft Entra 統合をサポートするための最新のプロトコルがありません。 最新化にはコストがかかり、計画が必要になり、潜在的なダウンタイム リスクが発生します。 代わりに、プロトコルを切り換えることで、F5 BIG-IP Application Delivery Controller (ADC) を使用してレガシ アプリケーションと最新の ID コントロールとの間のギャップを埋めます。
アプリの手前に BIG-IP を配置すると、Microsoft Entra の事前認証とヘッダーベースの SSO がサービスにオーバーレイされます。 このアクションにより、アプリケーションのセキュリティ態勢が向上します。
シナリオのアーキテクチャ
このシナリオの SHA ソリューションは次のいくつかのコンポーネントで構成されています。
- Oracle JDE アプリケーション - Microsoft Entra SHA によって保護される BIG-IP の公開済みサービス
- Microsoft Entra ID - ユーザーの資格情報、条件付きアクセス、BIG-IP への SAM ベース SSO を検証する Security Assertion Markup Language (SAML) ID プロバイダー (IdP)
- SSO を使用して、Microsoft Entra ID は BIG-IP にセッション属性を提供する
- BIG-IP - アプリケーションへのリバース プロキシおよび SAML サービス プロバイダー (SP)
- BIG-IP では SAML IdP に認証を委任した後、Oracle サービスに対するヘッダーベースの SSO を実行します
このチュートリアルでは、SHA は SP と IdP によって開始される各フローをサポートします。 次の図は、SP によって開始されるフローを示しています。
- ユーザーがアプリケーション エンドポイント (BIG-IP) に接続します。
- BIG-IP APM アクセス ポリシーにより、ユーザーが Microsoft Entra ID (SAML IdP) にリダイレクトされます。
- Microsoft Entra がユーザーを事前認証し、条件付きアクセスのポリシーを適用します。
- ユーザーは BIG-IP (SAML SP) にリダイレクトされます。 発行された SAML トークンを使用した SSO が発生します。
- BIG-IP によって、Microsoft Entra 属性がアプリケーション要求のヘッダーとして挿入される。
- アプリケーションが要求を承認し、ペイロードを返します。
前提条件
- Microsoft Entra ID 無料アカウント以上
- お持ちでない場合は、Azure 無料アカウントを取得してください。
- BIG-IP、または Azure の BIG-IP Virtual Edition (VE)
- 「F5 BIG-IP Virtual Edition VM を Azure にデプロイする」を参照してください
- 次のいずれかの F5 BIG-IP ライセンス:
- F5 BIG-IP® Best バンドル
- F5 BIG-IP APM スタンドアロン ライセンス
- 既存の BIG-IP F5 BIG-IP® Local Traffic Manager™ (LTM) に対する F5 BIG-IP APM アドオン ライセンス
- 90 日間の BIG-IP 全機能試用版ライセンス
- オンプレミス ディレクトリから Microsoft Entra ID に同期されたユーザー ID、または Microsoft Entra ID 内で作成されてオンプレミス ディレクトリに戻されたユーザー ID
- 「Microsoft Entra Connect 同期: 同期を理解してカスタマイズする」を参照してください
- 次のいずれかのロール: クラウド アプリケーション管理者、アプリケーション管理者
- HTTPS を介してサービスを発行するための SSL Web 証明書。または、テストの場合には既定の BIG-IP 証明書を使用します
- 「F5 BIG-IP Virtual Edition VM を Azure にデプロイする」を参照してください
- Oracle JDE 環境
BIG-IP の構成
このチュートリアルでは、Easy Button テンプレートを備えたガイド付き構成 16.1 を使用します。 Easy Button を使用すると、管理者は SHA のサービスを有効にするために Microsoft Entra ID と BIG-IP の間を行き来することがなくなります。 APM のガイド付き構成ウィザードと Microsoft Graph によって、デプロイとポリシー管理が処理されます。 統合により、アプリケーションで ID フェデレーション、SSO、条件付きアクセスが確実にサポートされます。
注意
このチュートリアルの文字列または値の例は、実際の環境のものに置き換えてください。
Easy Button を登録する
ヒント
この記事の手順は、開始するポータルによって若干異なる場合があります。
クライアントまたはサービスは、Microsoft Graph にアクセスする前に、Microsoft ID プラットフォームによって信頼される必要があります。
詳細情報: クイック スタート: Microsoft ID プラットフォームにアプリケーションを登録する
次の手順は、Graph への Easy Button アクセスを承認するためのテナント アプリ登録を作成する際に役立ちます。 BIG-IP はこの権限を使って、発行済みアプリケーションの SAML SP インスタンスと SAML IdP である Microsoft Entra ID の間に信頼を確立するための構成をプッシュします。
クラウド アプリケーション管理者以上として Microsoft Entra 管理センターにサインインします。
[ID]>[アプリケーション]>[アプリの登録]>[新しい登録] の順に移動します。
アプリケーションの名前を入力します。
[この組織ディレクトリのアカウントのみ] で、アプリケーションを使用するユーザーを指定します。
[登録] を選択します。
[API permissions] (API のアクセス許可) に移動します。
次の Microsoft Graph アプリケーションのアクセス許可を承認します。
- Application.ReadWrite.All
- Application.ReadWrite.OwnedBy
- Directory.Read.All
- Group.Read.All
- IdentityRiskyUser.Read.All
- Policy.Read.All
- Policy.ReadWrite.ApplicationConfiguration
- Policy.ReadWrite.ConditionalAccess
- User.Read.All
組織に対して管理者の同意を付与します。
[証明書とシークレット] にアクセスします。
新しいクライアント シークレットを生成してメモします。
[概要] に移動し、[クライアント ID] と [テナント ID] をメモします
Easy Button を構成する
APM Guided Configuration (ガイド付き構成) を開始します。
Easy Button テンプレートを起動します。
[Access] (アクセス) > [Guided Configuration] (ガイド付き構成) に移動します。
[Microsoft 統合] を選択します。
[Microsoft Entra アプリケーション] を選択します。
構成シーケンスを確認します。
[次へ] を選択します
構成シーケンスに従います。
Configuration Properties
[構成プロパティ] タブを使用して、新しいアプリケーション構成と SSO オブジェクトを作成します。 [Azure Service Account Details] (Azure サービス アカウントの詳細) セクションは、アプリケーションとして Microsoft Entra テナントに登録したクライアントを表します。 BIG-IP OAuth クライアントの設定を使用して、テナントに SSO プロパティと共に SAML SP を登録します。 Easy Button により、発行されて SHA が有効になっている BIG-IP サービスに対してこのアクションが実行されます。
注意
次の一部の設定はグローバルです。 これらを再利用して、より多くのアプリケーションを公開できます。
- [シングル サインオン (SSO) と HTTP ヘッダー] で、[オン] を選びます。
- [テナント ID]、[クライアント ID]、[クライアント シークレット] に、メモした内容を入力します。
- テナントに BIG-IP が接続されたことを確認します。
- [次へ] を選択します
サービス プロバイダー
サービス* プロバイダー*設定*では、SHA によって保護されるアプリケーション*の SAML SP インスタンス*のプロパティを定義します。
[ホスト] に、セキュリティで保護されたアプリケーションのパブリック FQDN を入力します。
[エンティティ ID] には、トークンを要求する SAML SP を識別するために Microsoft Entra ID が使用する識別子を入力します。
(オプション) [セキュリティ設定] で、発行された SAML アサーションの Microsoft Entra ID 暗号化を指定します。 このオプションを使用すると、コンテンツ トークンが傍受されることも、データが侵害されることもないという保証が高くなります。
[Assertion Decryption Private Key] (アサーション解読秘密キー) の一覧から、[新規作成] を選択します。
[OK] を選択します。
新しいタブで [SSL 証明書とキーのインポート] ダイアログが表示されます。
[Import Type] (インポートの種類) で、[PKCS 12 (IIS)] を選びます。 このオプションにより、証明書と秘密キーがインポートされます。
ブラウザー タブを閉じて、メイン タブに戻ります。
[Enable Encrypted Assertion](暗号化されたアサーションを有効にする) チェック ボックスをオンにします。
暗号化を有効にした場合は、[アサーション解読の秘密キー] のリストから証明書を選択します。 この秘密キーは証明書のためのもので、Microsoft Entra アサーションを解読するために BIG-IP APM で使用されます。
暗号化を有効にした場合は、[アサーション解読の証明書] のリストから証明書を選択します。 BIG-IP は、発行された SAML アサーションを暗号化するために、この証明書を Microsoft Entra ID にアップロードします。
Microsoft Entra ID
Easy Button には、Oracle PeopleSoft、Oracle E-business Suite、Oracle JD Edwards、SAP ERP 用のテンプレートと、汎用の SHA テンプレートが用意されています。
- [JD Edwards Protected by F5 BIG-IP](F5 BIG-IP で保護された JD Edwards) を選択します。
- [追加] を選択します。
Azure 構成
BIG-IP がテナントで作成するアプリの [表示名] を入力します。 [マイ アプリ] のアイコンに名前が表示されます。
(オプション) [サインオン URL] に、PeopleSoft アプリケーションのパブリック FQDN を入力します。
[署名キー] と [署名証明書] の横にある、[更新] を選択します。 このアクションによって、インポートした証明書が検索されます。
[Signing Key Passphrase](署名キーのパスフレーズ) に証明書のパスワードを入力します。
(オプション) [署名オプション] でオプションを選択します。 この選択により、Microsoft Entra ID によって署名されたトークンとクレームを BIG-IP が受け入れるようになります。
[User And User Groups] (ユーザーとユーザー グループ) は、Microsoft Entra テナントから動的に照会されます。
テストに使用するユーザーまたはグループを追加します。そうしないと、アクセスが拒否されます。
ユーザー属性とクレーム
ユーザーが認証されると、Microsoft Entra ID は、ユーザーを識別する既定のクレームと属性を使用して SAML トークンを発行します。 [ユーザー属性と要求] タブには、新しいアプリケーションのために発行する既定の要求が表示されます。 それを使用して、より多くの要求を構成します。
必要に応じて、他の Microsoft Entra 属性を含めます。 Oracle JDE のシナリオでは、既定の属性が必要です。
追加のユーザー属性
[追加のユーザー属性] タブでは、セッション拡張用に属性を他のディレクトリに格納する必要がある分散システムがサポートされます。 LDAP ソースからの属性を追加の SSO ヘッダーとして挿入して、ロール、パートナー ID などに基づいてアクセスを制御します。
Note
この機能には、Microsoft Entra ID との相関関係はありません。別の属性ソースです。
条件付きアクセス ポリシー
条件付きアクセス ポリシーは、デバイス、アプリケーション、場所、リスクの兆候に基づいてアクセスを制御するために、Microsoft Entra の事前認証後に適用されます。 [使用可能なポリシー] ビューには、ユーザー アクションのない条件付きアクセス ポリシーがあります。 [選択したポリシー] ビューには、クラウド アプリをターゲットとするポリシーがあります。 これらのポリシーはテナント レベルで適用されるため、選択を解除したり、[使用可能なポリシー] リストに移動できません。
アプリケーションに応じたポリシーを選択します。
- [使用可能なポリシー] リストでポリシーを選択します。
- 右矢印を選択して、ポリシーを [選択したポリシー] に移動します。
選択したポリシーでは、[含める] または [除外する] オプションがオンになっています。 両方のオプションをオンにすると、ポリシーは適用されません。
注意
タブを選択すると、ポリシー リストが 1 回表示されます。ウィザードでテナントを照会するには、[最新の情報に更新] を使用します。 このボタンは、アプリケーションのデプロイ後に表示されます。
仮想サーバーのプロパティ
仮想サーバーは、仮想 IP アドレスで表される BIG-IP データ プレーン オブジェクトです。 サーバーは、アプリケーションへのクライアント要求をリッスンします。 受信したトラフィックは処理され、仮想サーバー APM プロファイルに対して評価されます。 その後、トラフィックはポリシーに従って送信されます。
[接続先のアドレス] に、BIG-IP でクライアント トラフィックの受信に使用する IPv4 または IPv6 アドレスを入力します。 対応するレコードが DNS に表示され、クライアントは公開されたアプリケーションの外部 URL を IP に解決できます。 テストのために、テスト コンピューターの localhost DNS を使用します。
[サービス ポート] に 443 と入力して、[HTTPS] を選択します。
[Enable Redirect Port](リダイレクト ポートを有効にする) チェック ボックスをオンにします。
[リダイレクト ポート] に 80 と入力して、[HTTP] を選択します。 このオプションにより、受信 HTTP クライアント トラフィックが HTTPS にリダイレクトされます。
[クライアント SSL プロファイル] で [既存のものを使用] を選択します。
[共通] で作成したオプションを選択します。 テストする場合は既定値のままにします。 [クライアント SSL プロファイル] は仮想サーバーの HTTPS を有効にします。そのため、クライアント接続は TLS 経由で暗号化されます。
プールのプロパティ
[アプリケーション プール] タブには、BIG-IP の背後にあるサービスが、アプリケーション サーバーを持つプールとして表示されます。
[プールの選択] で、[新規作成] か、別のものを選択します。
[Load Balancing Method] (負荷分散方法) では、[Round Robin] (ラウンド ロビン) を選びます。
[Pool Servers](プール サーバー) については、[IP Address/Node Name](IP アドレス/ノード名) で、ノードを選択するか、Oracle JDE アプリケーションをホストするサーバーの IP とポートを入力します。
シングル サインオンと HTTP ヘッダー
Easy Button ウィザードでは、公開済みアプリケーションへの SSO のために、Kerberos、OAuth Bearer、HTTP 承認ヘッダーがサポートされています。 PeopleSoft アプリケーションではヘッダーが必要になります。
[HTTP ヘッダー] でチェック ボックスをオンにします。
[ヘッダー操作] で、[replace] (置換) を選びます。
[ヘッダー名] に JDE_SSO_UID と入力します。
[ヘッダー値] に「%{session.sso.token.last.username}」と入力します。
Note
中かっこ内の APM セッション変数では、大文字と小文字が区別されます。 たとえば、OrclGUID と入力すると、属性名が orclguid の場合に属性マッピングのエラーが発生します。
セッションの管理
BIG-IP セッション管理設定を使用して、ユーザー セッションの終了または継続の条件を定義します。 ユーザーと IP アドレス、および対応するユーザー情報に制限を設定します。
詳細については、support.f5.com にアクセスして、「K18390492: セキュリティ | BIG-IP APM 操作ガイド」を参照してください
運用ガイドでは、ユーザーがサインアウトしたときに IdP、BIG-IP、およびユーザー エージェント セッションが確実に終了するシングル ログアウト (SLO) 機能については説明されていません。Easy Button によって Microsoft Entra テナントに SAML アプリケーションがインスタンス化されると、ログアウト URL に APM SLO エンドポイントが入力されます。 [マイ アプリ] からの IdP によって開始されたサインアウトにより、BIG-IP とクライアントのセッションが終了します。
公開されたアプリケーションの SAML フェデレーション データは、テナントからインポートされます。 このアクションにより、APM に Microsoft Entra ID の SAML サインアウト エンドポイントが提示され、SP によって開始されるサインアウトでクライアントと Microsoft Entra のセッションが終了します。 APM は、ユーザーがサインアウトするタイミングを把握する必要があります。
BIG-IP Web トップ ポータルから発行済みアプリケーションにアクセスすると、APM によってサインアウトが処理され、Microsoft Entra サインアウト エンドポイントが呼び出されます。 BIG-IP Web トップ ポータルを使用しない場合、ユーザーはサインアウトするよう APM に指示できません。ユーザーがアプリケーションからサインアウトすると、BIG-IP は無視されます。 SP によって開始されるサインアウトには、セキュリティで保護されたセッションの終了が必要になります。 アプリケーションの [サインアウト] ボタンに SLO 関数を追加して、クライアントを Microsoft Entra SAML または BIG-IP サインアウト エンドポイントにリダイレクトします。 [アプリの登録] > [エンドポイント] にあるテナントの SAML サインアウト エンドポイント URL。
アプリを変更できない場合は、BIG-IP にアプリケーションのサインアウト呼び出しをリッスンさせてから、SLO をトリガーすることを検討してください。
詳細情報: チュートリアル: SSO 用の F5 BIG-IP Easy Button を Oracle PeopleSoft、PeopleSoft シングル ログアウトに設定する
詳細については、support.f5.com にアクセスし、次のページを参照してください。
デプロイ
- [デプロイ] を選択します。
- アプリケーションがエンタープライズ アプリケーションのテナント リストにあることを確認します。
構成の確認
ブラウザーを使用して、Oracle JDE アプリケーションの外部 URL に接続するか、[マイ アプリ] でアプリケーション アイコンを選択します。
Microsoft Entra ID に対して認証を行います。
アプリケーションの BIG-IP 仮想サーバーにリダイレクトされ、SSO によってサインインされます。
注意
アプリケーションへの直接アクセスをブロックできます。これにより BIG-IP を介したパスが強制されます。
詳細なデプロイ
ガイド付き構成テンプレートは、柔軟性に欠けている場合があります。
詳細情報: チュートリアル: ヘッダーベースの SSO 用に F5 BIG-IP Access Policy Manager を構成する
または、BIG-IP でガイド付き構成の厳格な管理モードを無効にします。 構成は手動で変更できますが、ほとんどの構成はウィザード テンプレートで自動化されています。
[Access] (アクセス) > [Guided Configuration] (ガイド付き構成) に移動します。
行の末尾で [南京錠] を選択します。
ウィザード UI での変更はできませんが、アプリケーションの公開インスタンスに関連付けられている BIG-IP オブジェクトは管理のためにロックが解除されます。
注意
厳密モードを再度有効にして構成をデプロイすると、ガイド付き構成以外で行われた設定が上書きされます。 運用サービスの場合には高度な構成をお勧めします。
トラブルシューティング
BIG-IP のログを使用して、接続、SSO、ポリシー違反、正しく構成されていない変数マッピングなどの問題を分離します。
ログの詳細
- [Access Policy] (アクセス ポリシー) > [Overview] (概要) に移動します。
- [Event Logs] (イベント ログ) を選びます。
- [設定] を選択します。
- 発行されたアプリケーションの行を選択します。
- [編集] を選択します。
- [Access System Logs](システム ログへのアクセス) を選択します
- SSO の一覧から [Debug] (デバッグ) を選びます。
- [OK] を選択します。
- 問題を再現します。
- ログを調べます。
詳細モードでは大量のデータが生成されるため、完了後に、この機能を元に戻します。
BIG-IP のエラー メッセージ
Microsoft Entra の事前認証後に BIG-IP のエラーが表示される場合は、この問題が Microsoft Entra ID から BIG-IP の SSO に関連している可能性があります。
- [アクセス] > [概要] に移動します。
- [Access reports] (レポートへのアクセス) を選びます。
- 直近 1 時間のレポートを実行します。
- ログに手がかりがないか確認します。
セッションの [View session] (セッションの表示) リンクを使用して、APM が予想される Microsoft Entra クレームを受信したことを確認します。
BIG-IP エラー メッセージなし
BIG-IP エラー メッセージが表示されない場合、その問題はバックエンド要求、または BIG-IP からアプリケーションへの SSO に関連している可能性があります。
- [Access Policy] (アクセス ポリシー) > [Overview] (概要) に移動します。
- [Active Sessions] (アクティブなセッション) を選びます。
- アクティブなセッション リンクを選びます。
特に BIG-IP APM がセッション変数から不正な属性を取得した場合は、[変数の表示] リンクを使用して、SSO の問題を特定します。
詳細情報:
- devcentral.f5.com にアクセスして、「APM 変数の割り当ての例」を参照してください
- セッション変数については、techdocs.f5.com を参照してください