Common Secure Interoperability バージョン 2 (CSIv2)
Common Secure Interoperability バージョン 2 (CSIv2) は、認証、委任、特権に関する CORBA セキュリティー・インターオペラビリティーの要件を満たすアーキテクチャーです。 CSIv2 アーキテクチャーでは、SAS プロトコルを使用して、セキュリティー・コンテキスト設定のために、GIOP の要求メッセージと応答メッセージのサービス・コンテキストでトークンを交換します。 トランスポート層セキュリティー (SSL/TLS) が SAS に必要であり、SAS は、クライアント認証と委任のために、2 つの追加の層を提供します。
SAS プロトコルは、2 つの層に分割されます。 認証層は、トランスポートで十分な認証が行われない可能性がある場合にクライアント認証の実行に使用されます。 属性層は、クライアントが ID などのセキュリティー属性をターゲット・サーバーにプッシュまたは送信するために使用することがあります。ターゲット・サーバーではアクセス制御の決定でこれらの属性が適用される場合があります。 トランスポートは SAS プロトコル・メッセージの一部ではなく、SAS メッセ ージはトランスポートに位置するものですが、CSIv2 の資料では説明を 簡単にするために、トランスポートをもう 1 つの層と呼んでいます。

CSIv2 ID アサーション
属性層の CSIv2 ID アサーション・サポートは、RMI/IIOP を使用して要求が実行されたときに、クライアント・プロセスからサーバー・プロセスに ID を表明するために使用されます。
アサーションとは、あるエンティティーから別のエンティティーに対して、代わりに ID を受け入れることを宣言するものです。 クライアントは、リモート・リソースの開始時に有効であったサブジェクトを表す ID を表明することができます。 ユーザーを表している識別トークンに加えて、クライアント・プロセスは、認証層またはトランスポート層で独自の ID も送信します。 ターゲット・サーバーは、信頼性検証を実行することで、クライアント・プロセスが ID を表明可能であることを確認します。 ターゲット・サーバーがクライアントを信頼する場合、サーバーは、表明された ID を使用して、 呼び出し時にクライアント・プロセスで有効であったユーザーを表すサーバー・サイド・サブジェクトを作成します。
クライアントは、プリンシパル名の識別トークンを使用しているユーザーを表明することができます。 プリンシパル名の形式は、クライアント・プロセスで構成されたユーザー・レジストリーによって異なります。 匿名識別トークン・タイプもサポートされ、サーバーは、そうしたトークンの受信時に非認証サブジェクトを使用します。
ID アサーションを使用した CSIV2 属性層の構成については、インバウンド CSIv2 属性層の構成またはアウトバウンド CSIv2 属性層の構成を参照してください。
CSIv2 認証層
CSIv2 認証層を使用して、RMI/IIOP を使用して要求が実行されたときに、クライアント・プロセスからサーバー・プロセスに認証情報を送信します。
クライアントによって送信され、その後サーバーがクライアントの認証に使用できるトークンを、CSIv2 認証層は含むことができます。 認証層では、さまざまなトークン・タイプがサポートされます。 例えば、GSSUP トークンは、クライアントのユーザー名とパスワードの送信に使用され、ターゲット・サーバーのユーザー・レジストリーと照合して検証されます。 Lightweight Third Party Authentication (LTPA) トークンは、パスワード送信を必要とせずにクライアントのユーザーを表すトークンですが、 リモート・メソッド呼び出しの前にクライアント・プロセスでユーザーが認証される必要があり、 クライアントとサーバーの両プロセスが LTPA 鍵を共有しなければなりません。
いずれのトークン・タイプでも、トークンを使用して、サーバー・プロセスでリモート・ユーザーを認証し、 クライアントがリモート・オブジェクトを開始する前にクライアント・サードで有効だったサブジェクトのサブジェクト表現を作成します。 ID アサーションも有効な場合、認証層は、クライアント ID を表すセキュリティー情報を含むことができ、 ID アサーション・トークンが呼び出し時の実際のリモート・ユーザーを表します。
CSIV2 認証層の構成については、インバウンド CSIv2 認証層の構成またはアウトバウンド CSIv2 認証層の構成を参照してください。
CSIv2 トランスポート層
Common Secure Interoperability バージョン 2 (CSIv2) トランスポート層サポートを使用して、 SAS プロトコル要求メッセージを保護し、クライアント・プロセスからサーバー・プロセスへのクライアント証明書認証をサポートします。
トランスポート層の主な機能として、クライアントからサーバー・プロセスへの SAS プロトコル・メッセージ送信のセキュリティー特性を提供します。 メッセージは、暗号化、署名、あるいはその両方を使用して保護することができます。 そうした特性を提供する基盤のメカニズムとして、Liberty の SSL サポートが使用されます。
トランスポート層の 2 番目の機能として、認証層が使用されないときに認証材料のソースを提供します。 ID アサーションが有効で、認証層が無効の場合、クライアント・プロセス ID は、トランスポートのクライアント証明書チェーンから取得されます。 ターゲット・サーバー・プロセスは、ユーザー・レジストリーのユーザーにマッピングすることで、クライアントの証明書チェーンを認証します。 証明書チェーン発行者の識別名を使用して、クライアントが ID アサートのために信頼されるかどうかを判別します。
ID アサーションと認証層がすべて無効の場合、 ターゲット・サーバー・プロセスで実際のリモート・メソッド呼び出しが開始されると、 クライアント証明書チェーンのマッピングから取得したサブジェクトが、呼び出し元サブジェクトとして使用されます。 ターゲット・サーバーの認証層がサポートされるが、必須ではなく、クライアントが認証トークンと識別トークンを送信しなかった場合も、これが適用されます。
ID アサーションを使用した CSIV2 属性層の構成については、インバウンド CSIv2 トランスポート層の構成またはアウトバウンド CSIv2 トランスポート層の構成を参照してください。
主な用語
- ORB – オブジェクト・リクエスト・ブローカー
- エンティティー間でオブジェクト・メソッド呼び出しを仲介します。これらのエンティティーは、同じプロセス内にある場合も、そうでない場合もあります。
- セキュリティー・コンテキスト
- ORB のオブジェクトの特定操作に関するセキュリティー特性を規定するために使用される情報。 例えば、オブジェクト操作の呼び出しで使用される ID。
- クライアント・セキュリティー・サービス (CSS)
- ターゲットの ORB のオブジェクトの操作のために、ターゲット・セキュリティー・サービスでセキュリティー・コンテキストを設定する SAS プロトコル要求を開始するエンティティー。
- ターゲット・セキュリティー・サービス (TSS)
- ORB のオブジェクトの操作と関係してセキュリティー・コンテキスト設定の SAS プロトコル要求を受け取るエンティティー。 セキュリティー・コンテキストを設定または使用する要求を受諾または拒否します。
- クライアント認証
- クライアントの認証に使用されるトークン・ベースのメカニズム。 GSSUP (ユーザー名パスワード GSS) は最小要件ですが、LTPA など他のものがある場合があります。
- ID アサーション
- 中間エンティティーが別のエンティティーを保証し、TSS が呼び出しプリンシパルの表明された ID を使用するメカニズム。 TSS は、ID を表明しているプロキシーを信頼するかどうかを決定できます。
- ステートレス
- セキュリティー・コンテキストは、単一要求の期間中のみ使用され、後続の要求では再使用されません。
- ステートフル
- セキュリティー・コンテキストは、設定後、TSS または CSS によって無効化されるまで、複数の要求で再使用することができます。
- トランスポート層セキュリティー
- 基礎となるトランスポートで提供されるセキュリティー・サポート。