• 検索結果がありません。

クロスドメイン・シングル・サインオン・ソリューション

ドキュメント内 amweb41_admin.ps (ページ 193-200)

セキュア・ドメインの保護を確保するために WebSEAL をプロキシー・サーバーと してインプリメントする場合は、複数の固有のドメインおよびサーバーにわたるリ ソースに対するシングル・サインオンを行うためのソリューションが必要になるこ とが、しばしばあります。この章では、2 つのクロスドメイン・シングル・サイン オン・ソリューションについて説明します。

この章で扱うトピックは以下のとおりです。

CDSSO

v 171 ページの『CDSSO 認証の説明』

v 174 ページの『CDSSO 認証の構成』

e-community

v 179 ページの『e-community シングル・サインオンの説明』

v 188 ページの『e-community シングル・サインオンの構成』

CDSSO 認証の説明

Tivoli Access Manager のクロスドメイン・シングル・サインオン (Cross-Domain Single Sign-on: CDSSO) は、固有のサーバーおよびドメイン間でユーザー信任状を 転送するためのデフォルトのメカニズムを提供します。 CDSSO では、Web ユーザ ーは、リソースを要求するときに、シングル・サインオンを行い、2 つの別個のセ キュア・ドメイン間をシームレスに移動することができます。 CDSSO 認証メカニ ズムは、マスター認証サーバー (Master Authentication Server: MAS) に依存しませ ん (179 ページの『e-community シングル・サインオンの説明』を参照)。

CDSSO は、複数のセキュア・ドメインの統合を実現することで、スケーラブルなネ

ットワーク体系というゴールの達成を支援します。たとえば、2 つ以上の固有ドメ

イン (それぞれ独自のユーザーおよびオブジェクト・スペースを持つ) により、大規

模な企業エクストラネットをセットアップすることができます。CDSSO により、シ ングル・サインオンを使用したドメイン間でのユーザーの移動が可能になります。

ユーザーが、他のドメインにあるリソースへの要求を出すと、CDSSO メカニズム は、第 1 のドメインから第 2 のドメインに、暗号化されたユーザー ID トークン を転送します。このトークンの中の識別情報は、第 1 ドメイン内でこのユーザーが 正しく認証されていることを、受信側ドメインに知らせます。この識別情報にはパ スワード情報は含まれていません。受信側サーバーはこのトークンを使用して、キ ャッシュ内にこのユーザー用の信任状を作成します。ユーザーは、新たにログイン する必要はありません。

シングル・サインオン認証のカスタマイズ

クロスドメイン・シングル・サインオン・ソリューションは、認証トークンを利用 して、エンコードしたユーザー識別を宛先サーバーに送ります。第 1 のサーバーで これらのトークンを構築する処理を、「トークン作成」と言います。宛先サーバー でトークンをデコードして使用することを、「トークン消費」と言います。アドミ ニストレーターは、ネットワークと Tivoli Access Manager のインプリメンテーシ ョンの要件に合わせて、カスタム・トークン作成/消費ライブラリーを作成すること ができます。クロスドメイン外部認証に関する詳細説明および API 参照情報につい ては、「IBM Tivoli Access Manager WebSEAL デベロッパーズ・リファレンス」を 参照してください。

多くの CDSSO シナリオでは、異なるドメインのユーザー間の 1 対 1 のマッピン

グ (デフォルト設定) は、すべての展開要件を満たすことができない場合がありま

す。

クロスドメイン・マッピング・フレームワーク (Cross-domain Mapping FrameWork:

CDMF) をプログラミング・インターフェースとして使用することにより、拡張ユー

ザー属性を処理し、ユーザー識別のマッピング・サービスを提供する、カスタム共 用ライブラリーを作成できます。

CDMF プログラミング・インターフェースを使用すると、ユーザー識別のマッピン グおよびユーザー属性の取り扱いを、柔軟性の高い方法でカスタマイズすることが できます。 CDMF に関する詳細な説明および API の参照情報については、「IBM Tivoli Access Manager WebSEAL デベロッパーズ・リファレンス」を参照してくださ い。

CDSSO の機能と要件

v CDSSO を利用するすべての WebSEAL サーバー間で、マシン時刻が同期してい

ることが必要です。マシン間の時刻の差が大きいと、サーバー間の認証が失敗す ることがあります。

v CDSSO が正しく機能するためには、この機能に参加する各 WebSEAL サーバー

が、自身の完全修飾ホスト名をクロスドメイン環境内の他の参加サーバーに開示 する必要があります。ドメインが含まれていないホスト名が 1 つでもあると、

CDSSO は使用可能にされず、エラー・メッセージが msg_webseald.log に記録 されます。 CDSSO 環境をセットアップするときは、個々の参加サーバーに関す るマシン固有ネットワーキング・セットアップにおいて、必ず完全修飾ホスト名 を使用してサーバーを識別するように構成してください。

v ある種の WebSEAL 構成では、マシン・ホスト名を完全修飾ホスト名で記述する

ことが必要とされるため、システムおよびネットワークがマシン名を完全修飾ホ スト名に解決できることを、確認する必要があります。完全修飾ホスト名を使用 すれば、たとえば、複数 WebSEAL インスタンスの場合のように、1 つのマシン につき多数のホスト名 (IP アドレス) を使用することができます。

CDMF を使用した CDSSO の認証プロセス・フロー

以下のプロセス・フローの説明を図で表すと、図19 のようになります。

1. 複数のドメインに参加したいユーザーはいずれも、初期ドメイン内に有効なユー ザー・アカウント、および、参加リモート・ドメインのそれぞれの中の有効なア カウントにマップできる識別を持っていなければなりません。

ユーザーは、ユーザーのアカウントがある最初のセキュア・ドメイン (A) に対 して最初に認証を行わなければ、CDSSO 機能を起動することはできません。

2. ユーザーは、Web ページ上のカスタム・リンクを介してドメイン B 内のリソー スにアクセスする要求を行います。

このリンクには、以下のような、特別の CDSSO 管理ページ式が入っています。

/pkmscdsso?<destination-URL>

例:

http://websealA/pkmscdsso?https://websealB/resource.html

3. この要求は、まずドメイン A の中の WebSEAL サーバーにより処理されます。

websealA サーバーは、ユーザーの信任状を含む認証トークンを作成します。こ

のトークンには、Tivoli Access Manager 識別 (ショート・ネーム)、現行ドメイ

ン (″A″)、追加のユーザー情報、およびタイム・スタンプなどが含まれていま

す。このプロセスは、組み込みのシングル・サインオン認証メカニズム (ライブ ラリー) の「トークン作成」機能により実行されます。

追加のユーザー情報 (拡張属性) は、カスタマイズされた CDMF 共用ライブラ リーを呼び出すことにより、取得できます (cdmf_get_usr_attributes)。このラ イブラリーは、ドメイン B でユーザー・マッピング・プロセスに使用できるユ ーザー属性を提供します。

WebSEAL の triple-DES は、cdsso_key_gen ユーティリティーにより生成され る対称鍵を使って、このトークン・データを暗号化します。このキー・ファイル は、ドメイン A と ドメイン B の両方の WebSEAL サーバーにより共用され、

両方のサーバーの webseald.conf 構成ファイルの [cdsso-peers] スタンザに保 管されます。

トークンには、トークンの存続時間を定義する構成可能なタイム・スタンプ (authtoken-lifetime) が入っています。タイム・スタンプが正しく構成されてい ると、これにより、リプレイ・アタックを防ぐことができます。

トークンは、pkmscdsso リンクに含まれている URL を使用して、宛先サーバ ーへのリダイレクトされた要求に組み込まれます。たとえば次のようになりま す。

http://websealB/resource.html?PD-ID=<encoded-authentication-token>

4. websealA サーバーは、暗号化されたトークンが入っている要求をブラウザーに

リダイレクトし、さらに websealB サーバーにリダイレクトします (HTTP リダ イレクト)。

5. webseal B サーバーは、参照ドメインから着信したトークンをデコードし、検証

します。このプロセスは、組み込みのシングル・サインオン認証メカニズム (ラ イブラリー) の「トークン消費」機能により実行されます。

6. トークン消費機能は、さらにカスタマイズ済みの CDMF ライブラリーを呼び出 し、CDMF ライブラリーが、実際のユーザー・マッピング (cdmf_map_usr) を 行います。

CDMF ライブラリーは、ユーザーの識別と拡張属性情報をトークン消費ライブ ラリーに戻します。トークン消費ライブラリーは、この情報を使用して信任状を 作成します。

7. websealB 許可サービスは、ユーザーの信任状と、要求されたオブジェクトに関

連した ACL 許可に基づいて、保護オブジェクトへのアクセスを許可するか拒否 します。

CDSSO 認証の構成

CDSSO 構成の要約

以下に示す個々の CDSSO 構成ステップについては、その後のセクションで詳しく 説明します。

デフォルトの CDSSO トークン作成機能の構成

1. CDSSO 認証を使用可能にして、通信タイプ別にシングル・サインオン要求を処

理できるようにする (cdsso-auth)。

2. トークン作成のための組み込みのシングル・サインオン認証メカニズム (ライブ ラリー) を構成する (sso-create)。

3. トークンをエンコードおよびデコードするために使用するキー・ファイルを作成 する。該当するすべての参加サーバーにキー・ファイルをコピーする

([cdsso-peers] スタンザ)。

4. トークン・タイム・スタンプを構成する (authtoken-lifetime)。

5. トークン・ラベル・パラメーターを構成する (cdsso-argument)。

19. CDMF を使用したクロスドメイン・シングル・サインオン・プロセス

デフォルトの CDSSO トークン消費機能の構成

1. CDSSO 認証を使用可能にして、通信タイプ別にシングル・サインオン要求を処

理できるようにする (cdsso-auth)。

2. トークン消費のための組み込みのシングル・サインオン認証メカニズム (ライブ ラリー) を構成する (sso-consume)。

3. 該当のキー・ファイルを割り当てる ([cdsso-peers] スタンザ)。

4. トークン・タイム・スタンプを構成する (authtoken-lifetime)。

5. トークン・ラベル・パラメーターを構成する (cdsso-argument)。

CDSSO 認証の使用可能および使用不可

CDSSO 認証方式を使用可能または使用不可にするため、および通信タイプ別にシン

グル・サインオン要求を処理できるようにするためには、webseald.conf 構成ファ イルの [cdsso] スタンザ内にある cdsso-auth パラメーターを使用します。

v CDSSO 認証方式を使用可能にするには、″http″、″https″、または ″both″ を入力し ます。

″http″、″https″、および ″both″ という値は、CDSSO 参加サーバーが使用する通信

のタイプを指定します。

v CDSSO 認証方式を使用不可にするには、″none″ を入力します。

″none″ という値は、該当サーバーについて CDSSO を使用不可にします。デフォ ルトの設定は ″none″ です。

例:

[cdsso]

cdsso-auth = https

シングル・サインオン認証メカニズムの構成

デフォルトの CDSSO 構成では、sso-create および sso-consume シングル・サ インオン認証メカニズムを使用可能にする必要があります。 sso-create メカニズ ムは、初期 WebSEAL サーバーが CDSSO トークンを作成し、リダイレクトされた 要求を作成するときに必要になります。 sso-consume メカニズムは、受信側

WebSEAL サーバーがトークンをデコードし、トークンに含まれている識別情報か

らユーザー信任状を作成するときに必要になります。デフォルトの CDSSO 構成で は、各パラメーターはそれぞれ組み込みの CDSSO トークン・ライブラリー・ファ イルを指定します。一方のライブラリーにはトークン作成機能用のコードが含まれ ており、もう一方のライブラリーにはトークン消費機能用のコードが含まれていま す。

v UNIX では、これらのライブラリー・ファイルの名前は、libssocreate. {so | a

| sl} および libssoconsume. {so | a | sl} です。

v Windows では、これらのライブラリー・ファイルは、ssocreate.dll および ssoconsume.dll という名前の DLL ファイルです。

認証 メカニズム

シングル・サインオン・トークン・ライブラリー

Solaris AIX Windows HP-UX

sso-create libssocreate.so libssocreate.a ssocreate.dll libssocreate.sl sso-consume libssoconsume.so libssoconsume.a ssoconsume.dll libssoconsume.sl

ドキュメント内 amweb41_admin.ps (ページ 193-200)

関連したドキュメント