Oracle Access Managerアクセス・システムは、Oracle Access Managerアイデンティティ・システムに対するオプションのコンポーネントです。アクセス・システムは、集中的な認証、認可、および監査の機能を提供し、シングル・サインオンとエンタープライズ・リソースに対する安全なアクセス制御を可能にします。リソースとしては、Webコンテンツ、アプリケーション、サービス、Web上のアプリケーションのオブジェクト、および非Web(非HTTP)リソースの同種のデータなどがあります。
この章では、次のことについて詳しく説明します。
表3-1は、主要なアクセス制御機能の一覧です。表の後に詳細な説明があります。
アクセス・システムの主要な機能として、認証、認可および監査があります(AAAと呼ばれることもあります)。後で詳しく説明するように、これらの機能は会社のアクセス・セキュリティ・ポリシーをWebアプリケーションとコンテンツに強制します。
認証サービス: Oracle Access Managerによって保護されているリソースへのアクセスを試みるユーザーおよびシステムを認証するための汎用手段を提供します。認証サービスは、ユーザー名とパスワードによる基本的な認証方法のみでなく、デジタル証明書やSecurIDカードなどのさらに強力な方法もサポートします。
標準の認証プラグインを使用することも、認証プラグインAPIを使用して独自のカスタム・プラグインを作成することもできます。各カスタム・プラグインは、認証インタフェースを実装し、アクセス・サーバーとプラグインの間で関連情報を受け渡します。インタフェース内のメソッドがデータを解析します。「アクセス・システムのカスタマイズ」および「外部認証」も参照してください。
ユーザーが認証されると、Oracle Access Managerはクライアントに対するシングル・サインオン(SSO)・セッションを作成し、ユーザーが他のリソースやアプリケーションにアクセスするときに再びサインオンする手間を省きます。
認可サービス: アプリケーション間で一貫性のある集中的なポリシーの管理を実現し、ユーザーにはWebベースのコンテンツとリソースに対する粒度の細かいアクセスを提供します。ユーザーやシステム必要とする簡単なアクセスを保証しながら、機密性の高い情報を保護できます。
認可は、デフォルトのルール・セットの一部である、ドメインのリソースを保護する方法を指定している認可条件式を含むポリシー・ドメインによって管理されます。アクセス・システムによって提供される認可スキームを使用することも、認可プラグインAPIを使用して作成されるカスタム・プラグインを含む1つ以上のカスタム・スキームを構成することもできます。APIの詳細は、『Oracle Access Manager開発者ガイド』を参照してください。
認可が確認されると、ユーザーはリソースへのアクセスを許可されます。
監査サービス: Crystal Reports用の既製レポートで、Oracle Access Managerでのイベントの柔軟かつ詳細なレポート、監査、およびロギングを提供します。監査およびログ・ファイルは、サード・パーティの製品と統合することで、脅威と侵入の検出、セキュリティ・モニタリング、およびビジネスレベルのレポートを可能にします。監査サービスはグローバルであり、アイデンティティ・システムの機能に対しても使用できます。監査の詳細は『Oracle Access Manager IDおよび共通管理ガイド』を参照してください。
パーソナライズ・サービス: HTTPヘッダー変数とリダイレクションURLを通して、他のアプリケーションに対するパーソナライズを可能にします。Oracle Access Managerがユーザーのリクエストを認証または認可すると、そこから返されるURLにはHTTPヘッダー変数を含めることができ、認証されたユーザーのIDでディレクトリに格納されているユーザー・データを変数に設定できます。
下流のアプリケーションは、この情報をデコードし、それを使用してユーザーの環境をパーソナライズできます。Oracle Access Managerによって返されるURLにリダイレクションURLを入れて、ユーザーのIDに合せてしつらえられた別のWebページにユーザーを送ることができます。
シングル・サインオン: ユーザーおよびユーザーのグループを、1回のログインと認証を済ますのみで複数のアプリケーションにアクセスできるようにします。複数回のログインが必要なくなるので、ユーザーに与える印象がよくなります。セッションの間、Cookieが生成されてユーザーのコンピュータに格納されます。このCookieにより、ユーザーは、Webサイトに対する以降のリクエストのためにシングル・ドメイン・サーバーにアクセスする必要があるときに、あらためてログインする必要がなくなります。マルチ・ドメイン・サーバーにアクセスする必要のあるユーザーには、セントラルWebログイン・サーバーによって生成されるCookieがあります。これは、関連付けられたWebシステム内のアクセスされる各サーバーに対して透過的に行われます。
委任アクセス管理: 管理タスクの分散を可能にします。少数の管理者がアクセス・システムを管理する責任を負っている場合、他のユーザーと作業を分担する場合があります。たとえば、失効したユーザー・リストを変更したり、構成の詳細やスキームを追加、変更、または削除したりするための権限を委任できます。
次に、アクセス・システムの簡単なインストールを示して説明します。
Oracle Access Managerアクセス・システムを使用すると、アクセス・ポリシーの作成を集中化しながら、ポリシーの管理と実施を分散化できます。アクセス・システムを使用して、次の種類のリソースを保護できます。
HTTPリソース。ディレクトリ、ページ、Webベースのアプリケーション、問合せ文字列など。
J2EEアプリケーション・サーバー・リソース。Java Server Pages(JSP)、サーブレット、Enterprise JavaBeans(EJB)など。
その他のリソース。スタンドアロン・プログラム(Java、C、C++)、ERPアプリケーション、CRMアプリケーションなど。
図3-1は、アクセス・システムの基本的なコンポーネントです。WebGateは、アクセス・サーバーと通信し、アクセス・サーバーはディレクトリ・サーバーと通信し、ポリシー・マネージャはWebPassを通してディレクトリ・サーバーと通信します。
Oracle Accessプロトコル(以前のNetPointまたはCOREid Accessプロトコル)を使用すると、ユーザーの認証と認可の間に、アクセス・システム・コンポーネント間で通信できます。Oracle Access Manager Webクライアント(ポリシー・マネージャとWebPass、アクセス・サーバーとWebGate)間のトランスポート・セキュリティは、オープン、シンプル(Oracle提供)、または証明書(サード・パーティのCA)のいずれかです。シンプル・モードと証明書モードでは、Oracle Access ManagerのコンポーネントはX.509デジタル証明書のみを使用します。
アクセス・サーバーとディレクトリ・サーバー(およびポリシー・マネージャとディレクトリ・サーバー)の間のトランスポート・セキュリティには、オープンまたはSSLを使用できます。すべてのポリシー・マネージャとディレクトリ・サーバーの間で、同じモードを使用する必要があります。
ポリシー・マネージャのインストールと設定の間に、LDAPディレクトリ・サーバーはポリシー・データ(アクセス・ポリシー・データ)を含むように更新されます。ポリシー・マネージャで定義されているすべてのアクセス・ポリシー定義が、ディレクトリ・サーバーに格納されます。
アクセス・システムのコンポーネントと動作については、次で詳細に説明します。
ここでは、ポリシー・マネージャ、アクセス・システム・コンソール、およびそれぞれで使用できる機能について説明します。
ポリシー・マネージャ: 管理者がアクセス・ポリシーを作成および管理できるWebベースのインタフェースを提供します。また、ポリシー・マネージャは、ディレクトリ・サーバーと通信してポリシー・データを書き込み、特定のポリシーの変更が行われたときにはOAP(Oracle Accessプロトコル)を介してアクセス・サーバーと通信してアクセス・サーバーを更新します。
マスター・アクセス管理者と委任アクセス管理者は、ポリシー・マネージャを使用して次のことを行います。
次のもので構成されるポリシー・ドメインを作成して管理します。
保護するリソース・タイプ
認証、認可および監査のルール
ポリシー(例外)
管理権限
ポリシー・ドメインにリソースを追加します。
アクセス・ポリシーの実施をテストします。
Webサーバー・インスタンスをホストしているコンピュータに、ポリシー・マネージャをWebPassとともにインストールする必要があります。WebPassは、ポリシー・マネージャと同じディレクトリ・レベルにインストールされます。フォルト・トレランスのために、複数のポリシー・マネージャをインストールすることをお薦めします。ポリシー・マネージャのインストールと設定の詳細は、『Oracle Access Managerインストレーション・ガイド』を参照してください。
アクセス・システム・コンソール: ポリシー・マネージャのインストールに含まれます。Webベースのアクセス・システム・コンソールがログイン・インタフェースを提供するタブと機能では、マスター管理者、マスター・アクセス管理者、および委任アクセス管理者は、次のような特定の操作を実行できます。
「システム構成」タブ: マスター管理者は、1人以上のユーザーをマスター・アクセス管理者に割り当てたり、委任アクセス管理者とその権限を追加または削除したりすることができます。マスター・アクセス管理者の役割には、リソース・タイプ、ポリシー・ドメイン、および認証と認可のスキームの定義が含まれます。
「システム構成」タブでは、管理者はサーバーの設定を表示および変更することもできます。たとえば、不具合に関するレポート、ユーザー・フィードバック、および会社のWebマスターに対する電子メール・アドレスの指定、シングル・サインオンに対するデフォルトのログアウトURLの変更、ディレクトリ・サーバーの設定の構成、キャッシュの設定の表示などを行うことができます。
「アクセス・システム構成」タブ: マスター・アクセス管理者または委任アクセス管理者は、次の作業を実行できます。
アクセス・ゲート、アクセス・サーバー、アクセス・サーバー・クラスタおよびホスト識別子の表示、追加、変更、削除
認証と認可のパラメータ、Webリソースのユーザー権限および共通情報の表示および変更
次のような共通情報の構成
共有シークレット: ブラウザに対するCookieを暗号化する暗号キーを生成します。
マスター監査ルール: そのインストールに対するデフォルトのマスター監査ルールを作成します。
リソース・タイプ定義: リソース・タイプを定義および管理します。パスワード・ポリシー・キャッシュのフラッシュ: パスワード・ポリシーを選択して、関連するすべてのキャッシュをフラッシュします。または、ロスト・パスワード管理ポリシーを選択して、関連するすべてのキャッシュをフラッシュします。重複アクション: 重複アクション・ヘッダーを処理するポリシーを選択します。
ポリシー・マネージャおよびアクセス・システム・コンソールにアクセスするには、ブラウザで次のURLを入力します。hostnameはWebPassおよびWebサーバーをホストするコンピュータ、portはWebPass Webサーバー・インスタンスのHTTPポート番号です。/access/oblixは、対象のアクセス・システムに接続します。
http://hostname:port/access/oblix
Oracle Access Manager アクセス・サーバーは、認証と認可において重要な役割を持ちます。
認証では、リソースに必要な認証方法を判別し、ディレクトリ・サーバーから資格証明を収集した後、資格証明の検証の結果に基づいて、HTTPレスポンスをアクセス・クライアント(WebGateまたはアクセス・ゲート)に返します。
認可では、アクセス情報を収集し、ディレクトリに格納されているポリシー・ドメインと認証の間に設定されたIDに基づいてアクセスを許可します。
これらの操作を実行するため、ディレクトリ・サーバーとWebGateの両方と通信するスタンドアロンのアクセス・サーバー・インスタンスを1つ以上使用できます。アクセス・サーバー・インスタンスをインストールする前に、アクセス・システム・コンソールでアクセス・サーバー・インスタンスを定義する必要があります。
注意: フェイルオーバーとロード・バランシングのために、複数のアクセス・サーバーをインストールすることをお薦めします。 |
Oracle Access Managerアクセス・クライアント(WebGateまたはアクセス・ゲート)からリクエストを受け取ります。
ディレクトリ・サーバーにある認証、認可、および監査のルールを問い合せて、次のことを判別します。
リソースが保護されているかどうか(保護されている場合はその方法)
ユーザーはすでに認証されているかどうか(ユーザーがまだ認証されていない場合は、チャレンジが提供されます)
ユーザーの資格証明が有効かどうか
リクエストされているリソースに対してユーザーが認可されているかどうか、およびその条件
アクセス・クライアントに対して次のように応答します。
次のようにしてセッションを管理します。
WebGateによるユーザー・セッションの終了を補助します。
タイムアウトしたときは再び認証を行います。
セッションの間のユーザー・アクティビティを追跡します。
ユーザーに対してセッション・タイムアウトを設定します。
Oracle Access Managerのマニュアルでは、アクセス・ゲートとWebGateが同じ意味で使用されている場合があります。しかし、両者には注意すべき違いがあります。
WebGateはWebサーバーのプラグイン・アクセス・クライアントであり、Webリソースに対するHTTPリクエストを捕捉して、認証と認可のためにアクセス・サーバーに転送します。WebGateは、すぐに使用できる状態でOracle Access Managerに同梱されています。
アクセス・ゲートはカスタム・アクセス・クライアントであり、ユーザーまたはOracleが、Software Developer Kit(SDK)およびOracle Access Manager APIを使用して個別に開発します。アクセス・ゲートは、ユーザーまたはアプリケーションからWebおよび非Web(非HTTP)のリソースに対するリクエストを処理するアクセス・クライアントの形式です。詳細は、「カスタム・アクセス・クライアント」を参照してください。
WebGateは、ユーザーまたはアプリケーションからリソースに対するリクエストを捕捉して、認証および認可のためにアクセス・サーバーに転送します。詳細は、「アクセス・システムの動作」を参照してください。
WebGateをインストールする前に、アクセス・システム・コンソールでWebGateを定義し、アクセス・サーバーまたはアクセス・サーバーのクラスタと関連付ける必要があります。詳細は、『Oracle Access Managerインストレーション・ガイド』を参照してください。
図3-2は、認証および認可においてアクセス・システムのコンポーネントが連携して動作するしくみを示しています。図の後に説明があります。
保護できるサーバーの中には、Webサーバー、アプリケーション・サーバー、およびFTPサーバー(Oracle Access Manager SDKを使用して)が含まれます。
WebGateはリクエストをアクセス・サーバーに転送し、リソースが保護されているかどうか、保護の方法、およびユーザーが認証されているかどうか(認証されていない場合は、チャレンジがあります)を判定します。
アクセス・サーバーは、ディレクトリ・サーバーでユーザーIDやパスワードなどの資格証明を確認し、情報をWebGateに返送して、ユーザーを認証するために暗号化されたCookieを生成します。
アクセス・サーバーは、ディレクトリ・サーバーに格納されていた情報を利用して、IDを判定するための顧客指定の認証方法を使用して、ユーザーを認証します。Oracle Access Managerの認証は、任意のサード・パーティ認証方法および異なる認証レベルをサポートします。機密性の程度が異なるリソースは、より厳しい認証方法に対応する高いレベルの認証を要求することで保護できます。
認証に続いて、WebGateは、アクセス・サーバーに対し、適切なセキュリティ・ポリシーを探し、それをユーザーのIDと比較して、ユーザーの認可のレベルを判定するよう求めます。
アクセス・ポリシーが有効な場合は、ユーザーは希望するコンテンツまたはアプリケーションへのアクセスを許可されます。
ポリシーが正しくない場合は、ユーザーはアクセスを拒否され、組織の管理者が決定する別のURLにリダイレクトされます。
前に説明したように、ポリシー・マネージャは、ディレクトリ・サーバーと通信してポリシー・データを書き込み、特定のポリシーの変更が行われたときにはOAPを介してアクセス・サーバーと通信してアクセス・サーバーを更新します。WebPassは、ポリシー・マネージャに対する管理者のリクエストを捕捉して転送します。
Oracle Access Managerアクセス・システムのカスタマイズに利用できる様々なコンポーネントとメソッドが提供されています。
アクセス・ゲートは、カスタム製のアクセス・サーバー・クライアント(エージェント)であり、Oracle Access Managerによって保護されたLDAPドメイン内にあるリソースへのアクセスに対するユーザー・リクエストを処理します。ユーザー・リクエストを処理するためのコードは、プラグインに埋め込むことも、スタンドアロンのアプリケーションとして作成することもできます。
アクセス・ゲートは、アクセス・サーバーを使用して、Webサイトに対するアクセスの試みを制御します。アクセス・ゲートを使用すると、認可および認証をURLに加えて他のリソースにも拡張でき、Oracle Access Managerの外部のアプリケーションとのユーザーの対話を制御できます。これにより、Webリソースおよび非Webリソースに適用される集中的なポリシー情報が提供されます。
アクセス・ゲートの詳細は、『Oracle Access Manager開発者ガイド』を参照してください。「Access Manager API」も参照してください。
製品とともにインストールされる標準の認証および認可プラグインを使用することも、Oracle Access Managerの認証プラグインAPIおよび認可プラグインAPIを使用して独自のカスタム・プラグインを作成することもできます。各カスタム・プラグインは、適切なインタフェース(認証または認可)を実装します。プラグインに応じて、インタフェースはアクセス・サーバーとプラグインの間での関連情報の受け渡しを有効にします。インタフェース内のメソッドがデータを解析します。
C言語およびC#(.NETマネージ・コード)の認証プラグインAPIおよび認可プラグインAPIを使用して、カスタム・プラグインを開発できます。
Access Manager APIは、Software Developer Kitのサブセットです。Access Manager APIを使用して、サポートされている4種類の開発言語でカスタム・アクセス・クライアント・コードを記述し、Java、CおよびC++、C#(.NET)のアプリケーションと統合できます。4種類の実装は、それぞれプラットフォーム固有の機能を利用してAPIを実装していますが、機能的には同じです。
詳細は、「カスタム・アクセス・クライアント」を参照してください。
ポリシー・マネージャAPI(Access Manager SDKのサブセット)を使用すると、ポリシー・ドメインとその内容を作成して管理したり、カスタム・アプリケーションによるアクセス・サーバーの認証、認可、および監査の各サービスへのアクセスを可能にしたりすることができます。たとえば、GUIではなくプログラム・インタフェースを使用するアプリケーションを作成し、ポリシー・ドメインとその内容を作成、変更、削除、および取得することができます。
ポリシー・マネージャ(およびポリシー・マネージャAPI)が提供する機能の詳細は、ポリシー・マネージャのGUIおよび『Oracle Access Managerアクセス管理ガイド』を参照してください。
ポリシー・マネージャAPIは、特定のオブジェクトをインスタンス化するために使用できるクラスに対するJava、C、およびマネージ・コードのバインディングを提供します。詳細は、『Oracle Access Manager開発者ガイド』を参照してください。
Oracle Access Manager Software Developer Kitは、個別にインストールする必要のあるオプションのコンポーネントです。サポートされている各開発プラットフォームに対するアクセス・システムAPIのライブラリ、ビルド命令、例、およびリソースを提供します。このAPIを使用すると、認証および認可のためにアクセス・サーバーにアクセスできる、IBM WebSphere、Sun、またはその他のアプリケーション・サーバーなどの、市販されているアプリケーション・サーバーに組み込むことのできるインタフェースを作成できます。
個別のアクセス・システムAPIについては、この章で解説します。Software Developer KitおよびすべてのAPIの詳細は、『Oracle Access Manager開発者ガイド』を参照してください。
Oracle Access Managerの外部認証を使用すると、信頼できる技術リレーションシップを通して、企業の境界を越えて、複数のセキュリティ・システムを統合できます。
インストールした後、認証用に外部SSOソリューションを信頼するよう、Oracle Access Managerを構成する必要があります。認証の実行中には、サード・パーティの認証メカニズムによって提供されるID情報が受け付けられて、Oracle Access Managerによって認可された適切なユーザーにマップされます。
外部認証メカニズムの詳細は、『Oracle Access Managerアクセス管理ガイド』および『Oracle Access Manager統合ガイド』を参照してください。
フェデレーションという用語は、信頼を意味するラテン語が基になっています。セキュリティ管理のコンテキストで使用する場合、フェデレーションとは、基本的に、信頼できる技術リレーションを通して複数のセキュリティ・システムを統合することを意味します。フェデレーテッド認証を使用すると、企業の境界を越えて複数のセキュリティ・システムを統合できます。
Oracle Identity Federationがサポートする外部認証メカニズムの詳細は、『Oracle Identity Federation管理者ガイド』を参照してください。
このガイドの他の章では、概念、動作、マニュアル、および用語についてさらに詳しく説明します。