アーキテクチャ

IAM E-Business Suite Asserterは、個別のOracle WebLogic Serverインスタンスにデプロイされます。E-Business Suite Asserterは、IAM REST APIを介してIAMと対話し、ユーザーのWebブラウザをIAMおよびOracle E-Business Suiteにリダイレクトします。

このアーキテクチャ・ダイアグラムは、E-Business Suite Asserter、Oracle E-Business SuiteおよびIAMがどのように対話するかを示しています。

このダイアグラムは、Oracle E-Business Suiteのクラウドベースのシングル・サインオンに対応するプロセス・フローを示しています。アイコンは、ユーザー、Webブラウザ、IAM、Oracle E-Business SuiteおよびE-Business Suite Asserterを表しています。フローは、ダイアグラムに続くテキストで説明されています。

次のダイアグラムは、E-Business Suite Asserterを使用してOracle E-Business SuiteをIAMと統合する場合のログインおよびログアウト・フローを示しています。これらのフロー・ダイアグラムは、Oracle E-Business Suiteから開始するログインおよびログアウト・プロセスを示していますが、E-Business Suite Asserterアプローチでは、E-Business Suite AsserterおよびIAMで開始するフローもサポートされています。

このデータ・フロー・ダイアグラムは、ログイン・プロセスの詳細情報にアクセスするためのWebブラウザ、E-Business Suiteインスタンス、E-Business Suite AsserterおよびIAM間のイベント、コールおよびレスポンスのフローを示しています。上部のアイコンは、Webブラウザ、E-Business Suiteインスタンス、E-Business Suite AsserterおよびIAMを表しています。Webブラウザ、E-Business Suiteインスタンス、E-Business Suite AsserterおよびIAM間のフローは、数字と矢印を使用して表示されています。フローは、ダイアグラムに続くテキストで説明されています。
  1. ユーザーは、Oracle E-Business Suiteで保護されたリソースにアクセスします。
  2. Oracle E-Business Suiteは、ユーザー・ブラウザをE-Business Suite Asserterアプリケーションにリダイレクトします。
  3. E-Business Suite Asserterは、IAM SDKを使用して認可URLを生成し、ブラウザをIAMにリダイレクトします。
  4. IAMは、そのサインイン・ページをユーザーに提供します。
  5. ユーザーは、IAMに資格証明を送信します。
  6. IAMは、認可コードを発行し、ユーザーのブラウザをE-Business Suite Asserterにリダイレクトします。
  7. E-Business Suite Asserterは、IAM SDKを使用してIAMと通信し、認可コードをアクセス・トークンに交換します。
  8. IAMは、アクセス・トークンおよびIDトークンをE-Business Suite Asserterに発行します。
  9. E-Business Suite Asserterは、Oracle E-Business Suite SDKを使用してOracle E-Business Suiteセッションを作成し、ユーザーのブラウザをOracle E-Business Suiteにリダイレクトします。
  10. Oracle E-Business Suiteは、ユーザーがリクエストした保護されたリソースを提供します。

次のログアウト・プロセスは、Oracle E-Business Suiteからのログアウトを実行するユーザーを示しています。ログアウト・プロセスがIAMで開始された場合は、ステップ5および6のみが実行されます。

このデータ・フロー・ダイアグラムは、ログアウト・プロセスの詳細情報にアクセスするためのWebブラウザ、E-Business Suiteインスタンス、E-Business Suite AsserterおよびIAM間のイベント、コールおよびレスポンスのフローを示しています。上部のアイコンは、Webブラウザ、E-Business Suiteインスタンス、E-Business Suite AsserterおよびIAMを表しています。Webブラウザ、E-Business Suiteインスタンス、E-Business Suite AsserterおよびIAM間のフローは、数字と矢印を使用して表示されています。フローは、ダイアグラムに続くテキストで説明されています。
  1. ユーザーは、Oracle E-Business Suiteからログアウトすることを選択します。
  2. Oracle E-Business Suiteは、ユーザーをログアウトし、ユーザーのブラウザをE-Business Suite Asserterアプリケーションにリダイレクトします。
  3. E-Business Suite Asserterは、IAM SDKを使用してIAMログアウトURLを取得し、ユーザーのブラウザをこのURLにリダイレクトします
  4. ユーザー・ブラウザは、IAMログアウトURLを起動します。
  5. IAMは、ユーザー・セッションを削除し、ユーザーのブラウザをアプリケーション構成で定義されたE-Business Suite AsserterログアウトURLにリダイレクトします。
  6. E-Business Suite Asserterは、ユーザーをログアウトし、ユーザーのブラウザをログアウト後のリダイレクトURL (これはアプリケーション構成で定義されます)にリダイレクトします。

E-Business Suite Asserterの使用に関する考慮事項

E-Business Suite Asserterを使用するには、インストールおよび構成に関する次の考慮事項を理解する必要があります:

  • SSOが機能するには、EBS AsserterのWebLogic ServerとOracle E-Business Suiteのアプリケーション・サーバーのホスト名がまったく同じドメインである必要があります。

  • IAMにはSSL経由でのみアクセスできるため、E-Business Suite AsserterにはSSL経由でアクセスする必要があります。これを行わないと、IAMとE-Business Suite Asserter間でSSOが失敗する可能性があります。

  • E-Business Suite Asserterが実行されるサーバー・クロックと、Oracle E-Business Suiteが実行されるサーバー・クロックを同期してください。

  • アサータは、Secure Sockets Layer (SSL)やTransport Layer Security (TLS)などのセキュアな通信を使用して、Oracle WebLogic Server 12cにデプロイできます。

Oracle E-Business Suiteの複数のインスタンスでアサータを使用する方法

複数の管理対象サーバーがある同じWebLogic Serverインストールを使用することも、それぞれに1つの管理対象サーバーがある別のWebLogic Serverインストールから使用することもできます。どちらの場合も、各IAM E-Business Suite Asserter URLには、独自のドメイン名とポート番号のペアがあります。

ノート

Oracle E-Business Suite (EBS)インスタンスごとに、関連付けられたデータベース名は一意である必要があります。たとえば、3つのEBSインスタンス(test、devおよびprod)がある場合、データベース名はそれぞれebstestebsdevebsprodにできます。

Oracle E-Business Suite (EBS)インスタンスごとに、E-Business Suite Asserter (EBS Asserter) Javaアプリケーションの1つのインスタンスを構成およびデプロイします。通常は、各EBS Asserter Javaアプリケーションを特定のWebLogic管理対象サーバーにデプロイします。

EBS Asserterバージョン19.2.1-1.5.0以降では、複数の管理対象サーバーを作成してそれぞれに1つずつEBS Asserter Javaアプリケーションをデプロイしない場合、同じWebLogic管理対象サーバーに複数のEBS Asserter Javaアプリケーションをデプロイできます。

このシナリオを実現するには、次のタスクを実行する必要があります:

  • 同じWebLogic管理対象サーバーにファイルをデプロイする前に、各EBS Asserter JavaアプリケーションのWebアプリケーション・リソース(WAR)ファイルの名前を変更します。この場合、すべてのEBS Asserter URLのドメイン名とポート番号は同じですが、URLのコンテキストは変更されます。

  • ebs.warファイルの内容をフォルダに抽出し、weblogic.xmlファイルを見つけてこのファイルを編集し、EBS Asserter URLと一致するように<cookie-path>タグの値を更新して、ebs.warを再ビルドします。

    たとえば、EBS AsserterでURLコンテキスト/app/ebsに応答する場合は、weblogic.xml内のタグを値<cookie-path>/app/ebs</cookie-path>で更新します。

例: Development 1およびDevelopment 2という2つのEBSインスタンスがある状態で、EBS Asserterを使用してこれらのEBSインスタンスをIAMと統合しますが、2つのEBS Asserter Javaアプリケーションに対して1つのWebLogic管理対象サーバーのみがある場合、EBSインスタンスごとにこのチュートリアルの手順を実行する必要があります。WebLogic Serverは1回のみ構成し、EBS Asserter JavaアプリケーションはEBSインスタンスごとに構成およびデプロイします:

  • EBSインスタンスDevelopment 1の場合:

    • ebs.warファイルのコピーを作成し、新しいファイルにebsdev1.warという名前を付けます。
    • ebsdev1.warファイルに含まれているweblogic.xmlファイルを更新し、cookie-pathタグを次のように置き換えます: <cookie-path>/ebsdev1</cookie-path>
    • ebsdev1.warファイルに含まれているbridge.propertiesファイルを更新します。
    • ebsdev1.warファイルをWebLogic管理対象サーバーにデプロイします。
  • EBSインスタンスDevelopment 2の場合:

    • ebs.warファイルのコピーを作成し、新しいファイルにebsdev2.warという名前を付けます。
    • ebsdev2.warファイルに含まれているweblogic.xmlファイルを更新し、cookie-pathタグを次のように置き換えます: <cookie-path>/ebsdev2</cookie-path>
    • ebsdev2.warファイルに含まれているbridge.propertiesファイルを更新します。
    • ebsdev2.warファイルをWebLogic管理対象サーバーにデプロイします。

ebsdev1.warファイルとebsdev2.warファイルの両方を同じWebLogic管理対象サーバーにデプロイします。EBSインスタンスDevelopment 1のEBS Asserter URLは、次の例のようになります: https://ebsasserter.example.com:7002/ebsdev1

EBSインスタンスDevelopment 2のEBS Asserter URLは、次の例のようになります: https://ebsasserter.example.com:7002/ebsdev2