シングル・サインオン

Oracle Forms Servicesでのシングル・サインオンは、Oracle HTTP Server用のOracleモジュールであるwebgateを介して使用できます。webgateアクセス・クライアントは、Oracle Access Manager (OAM)に対してユーザーを認証します。

詳細は、「Oracle Access ManagerでのFormsサービスの使用」を参照してください。

Formsアプリケーションでは、データベース接続文字列がアプリケーションのリクエストとともに渡されます。渡されない場合は、ログイン・ダイアログが表示されます。シングル・サインオン環境でデータベース接続情報を取得するには、ユーザーのシングル・サインオン・サーバー名、認証されたユーザー名およびユーザーが起動をリクエストしているアプリケーション名を結合して作成される一意キーの値を、Formsサーブレットを使用してOracle Internet Directoryに問い合せます。

リソース・アクセス記述子(RAD)は、各ユーザーおよびアプリケーションに対して定義される、必要なデータベース接続情報を含むOracle Internet Directoryのエントリです。Forms ServletはRADからデータベース接続情報を読み取って、Forms Webアプリケーションを起動するコマンドラインとともに渡します。Forms認証はまだデータベース中心ですが、webgateおよびFormsサーブレットはWebベースの認証サーバー環境に統合されています。

詳細は、次を参照してください。

ユーザーおよびその権限のクラス

従来、Formsアプリケーションでは、アプリケーション・ユーザーの認証にデータベースが使用されています。シングル・サインオン(SSO)でOracle Forms Servicesを使用するには、ユーザー・アカウントとその接続情報がOracle Internet Directoryで利用可能である必要があります。Oracle Internet Directoryでは、PL/SQL、JavaまたはOracle Delegated Administration Servicesを使用した複数の方法でユーザー・データがプロビジョニングされます。Oracle Delegated Administration Servicesは、Oracle Single Sign-Onユーザーおよび委任管理者用のWebベースのユーザー・インタフェースであり、権限を持つOracle Internet Directoryのセルフサービス・データの管理に使用します。

Oracle Internet Directoryでユーザー・アカウントを作成した後は、ユーザーによるFormsアプリケーションの初回リクエスト時に、(このアプリケーションに必要なデータベース接続情報をユーザーが知っていることを前提として)リソース・アクセス記述子(RAD)のエントリを動的に作成できます。

もうひとつの選択肢は、Oracle Delegated Administration Servicesで作成可能なRADのエントリを使用することです。デフォルトのRADエントリには、Oracle Single Sign-Onで認証されるすべてのユーザーがアクセスできます。特定のFormsアプリケーションをWebで実行しているときに、すべてのユーザーが同じデータベース接続情報を共有している場合はデフォルトのRADを使用します。このように、ユーザーはそのOracle Single Sign-On接続情報によって個別に認証されますが、デフォルトのRADエントリで定義されたアプリケーションでは、すべてのユーザーが共通のデータベース接続(情報)を共有します。

ユーザー・アカウントのデフォルトのシングル・サインオン動作

デフォルトでは、認証サーバーが有効となり、プロキシ・ユーザーは使用されません。Oracle Formsユーザーは、認証サーバーで認証を行い、アイデンティティ・ストア(通常はOracle Internet Directory)からリソース・アクセス記述子を取得し、これらの資格証明を使用してデータベースに接続する必要があります。

データベース・プロキシ機能を使用するユーザー

シングル・サインオン・パラメータssoProxyConnectが新しく追加されました。これをtrueに設定すると、ユーザーはプロキシ・ユーザーとして接続できるようになります。ユーザーは認証サーバーでの認証を求められ、プロキシ・ユーザーのユーザー名とパスワードを保持するリソース・アクセス記述子が構成されます。データベース管理者は、プロキシ接続を許可するために、データベース構成を追加で実装する必要があります。

保護されるリソース

Formsアプリケーションに対してシングル・サインオンを有効化する場合、次の機能でFormsアプリケーションを保護できます。

  • Oracle Internet Directoryでの動的リソースの作成: 以前のOracle Forms Servicesの一部のリリースでは、特定のアプリケーションおよびユーザーでRAD定義が見つからない場合に、エラー・メッセージが表示され、認証済にもかかわらずユーザーはそのFormsアプリケーションを実行できませんでした。Oracle Forms Servicesのこのリリースでは、RAD定義が存在しない場合は、ユーザーがOracle Forms Servicesを構成してリアルタイムにこのアプリケーションのRADを作成できます。該当する作成ページにリダイレクトする機能は、シングル・サインオン・パラメータssoDynamicResourceCreateで実現されます。

  • シングル・サインオンを使用した場合のデータベース・パスワードの期限切れ: 以前のOracle Forms Servicesの一部のリリースでは、データベース・パスワードが期限切れの場合、Oracle Internet DirectoryのRAD情報は更新されませんでした。そのため、ユーザーは、Formsアプリケーションへの接続時にデータベース・パスワードを更新していました。Oracle Forms Servicesのこのリリースでは、Formsによるデータベース・パスワードの更新に伴ってOracle Internet DirectoryのRAD情報も自動的に更新されます。Oracle Forms Servicesのこの機能を使用するために、追加構成を行う必要はありません。

認証およびアクセス強制

ユーザーによるOracle Forms Services URLの初回リクエスト時など(パートナ・アプリケーションからのリクエスト時も含む)、Oracle Forms Servicesにおけるシングル・サインオン・サポートの認証フローの詳細は、「認証フロー」を参照してください。