第 8 章
シングルサインオンの設定
この章では、シングルサインオン (SSO) の設定方法を説明します。
シングルサインオン (SSO) を利用することで、ユーザーは認証を一度受けるだけで、信頼できる複数のアプリケーションを追加認証なしで使用できます。Calendar Server と Messaging Server を含め、Sun Java System コミュニケーションサーバーは次の方法で SSO を実装できます。
Identity Server による SSO の設定
Calendar Server および Messaging Server を含めて Sun Java Enterprise System サーバーは、Sun Java System Identity Server (リリース 6.1 (リリース 6 2003Q4) 以降) を使用して SSO を実装できます。
Identity Server は、Sun Java Enterprise System サーバーの SSO ゲートウェイとして機能します。ユーザーは Identity Server にログインすると、その他の Sun Java Enterprise System サーバーで SSO が適切に設定されていれば、それらのサーバーにもアクセスできます。
Calendar Server で SSO を利用するには、次の手順を実行します。
- Identity Server と Directory Server がインストールされ、設定されていることを確認します。これらの製品のインストールと設定については、『Sun Java Enterprise System 2004Q2 インストールガイド』を参照してください。
- 表 8-1 に示されるパラメータを設定して Calendar Server 用の SSO を設定し、変更が適用されるように Calendar Server を再起動します。パラメータを設定するときは、必要に応じてコメント記号 (!) を外します。
注 : local.calendar.sso.amnamingurl パラメータを設定するときは、Identity Server の完全修飾名を指定する必要があります。
- Messaging Server で SSO を利用するための設定については、『Sun Java System Messaging Server 6 2004Q2 管理ガイド』を参照してください。
- ユーザーは、Directory Server LDAP ユーザー名とパスワードを使用して Identity Server にログインします。(Calendar Server や Messaging Server など、これ以外のサーバーにログインしたユーザーは SSO を利用できず、他の Sun Java Enterprise System サーバーにアクセスできません。
- ログインが完了すると、ユーザーは適切な URL を指定して Calendar Express 経由で Calendar Server にアクセスできます。サーバーに SSO が適切に設定されていれば、Messaging Server など、その他の Sun Java Enterprise System サーバーにもアクセスできます。
表 8-1 Identity Server を使用して SSO を設定するための Calendar Server 設定パラメータ
パラメータ
|
説明
|
local.calendar.sso.amnamingurl
|
Identity Server の SSO ネーミングサービスの URL を指定する
デフォルトは、http://IdentityServer:port/amserver/namingservice
ここで、IdentityServer は Identity Server の完全修飾名、port は Identity Server のポート番号
|
local.calendar.sso.amcookiename
|
Identity Server の SSO cookie 名を指定する
デフォルトは iPlanetDirectoryPro
|
local.calendar.sso.amloglevel
|
Identity Server SSO のログレベルを指定する。範囲は 1 (非出力) から 5 (詳細) デフォルトは 3
|
local.calendar.sso.logname
|
Identity Server の SSO API ログファイル名を指定する
デフォルトは am_sso.log
|
local.calendar.sso.singlesignoff
|
Calendar Server から Identity Server へのシングルサインオフを有効 (yes) または無効 (no) にする
有効にした場合、ユーザーが Calendar Server からログアウトすると、そのユーザーは Identity Server からもログアウトされる。また、そのユーザーが Identity Server 経由で開始したすべてのセッション (Messaging Server の webmail セッションなど) も切断される
Identity Server は認証ゲートウェイであるため、Identity Server から Calendar Server へのシングルサインオフは、常に有効になっている
デフォルトは yes
|
Identity Server を利用した SSO についての考慮点
- カレンダーセッションが有効なのは、Identity Server のセッションが有効である期間に限られます。ユーザーが Identity Server からログアウトすると、そのユーザーのカレンダーセッションは自動的に閉じられます (シングルサインオフ)。
- SSO アプリケーションは、同じドメインに存在する必要があります。
- SSO アプリケーションは、Identity Server の検証 URL (ネーミングサービス) にアクセスできる必要があります。
- ブラウザは、Cookie をサポートしている必要があります。
- Sun Java System Portal Server ゲートウェイを使用している場合は、次の Calendar Server パラメータを設定します。
- service.http.ipsecurity="no"
- render.xslonclient.enable="no"
Communications サーバーの信頼できるサークルテクノロジを利用した SSO の設定
Communications サーバーの信頼できるサークルテクノロジを利用して (つまり Identity Server を使用せずに) SSO を設定する場合は、次の点に注意してください。
- 信頼できるアプリケーションのそれぞれで SSO を設定する必要があります。
- ブラウザのキャッシュに default.html ページが含まれている場合、SSO は正しく機能しません。SSO を使用する前に、ブラウザで default.html ページを再度読み込んでください。たとえば、Netscape Navigator であれば、Shift キーを押しながら更新ボタンをクリックします。
- SSO は、「修飾されていない」URL だけで機能します。たとえば、http://servername であれば SSO は機能しますが、http://servername/command.shtml?view のような URL では機能しません。
表 8-2 は、Communications サーバーの信頼できるサークルテクノロジによって SSO を設定する場合の Calendar Server 設定パラメータを示しています。
表 8-2 Communications サーバーの信頼できるサークルテクノロジを利用して SSO を設定する場合の Calendar Server 設定パラメータ
パラメータ
|
説明
|
sso.enable = "1"
|
SSO を有効にするには、このパラメータを 1 に設定する (デフォルト)。0 に設定すると SSO は無効になる
|
sso.appid = "ics50"
|
このパラメータには、Calendar Server の特定のインストールを指定する一意のアプリケーション ID を指定する。信頼できるそれぞれのアプリケーションは、一意のアプリケーション ID を持つ。デフォルトは ics50
|
sso.appprefix = "ssogrp1"
|
このパラメータには、SSO cookie のフォーマットに使用される接頭辞の値を指定する。Calendar Server は、この接頭辞を持つ SSO cookie だけを認識するため、信頼できるすべてのアプリケーションがこれと同じ値を使用する必要がある。デフォルトは ssogrp1
|
sso.cookiedomain = ".sesta.com"
|
このパラメータには、指定ドメイン内のサーバーだけに cookie を送信するようにブラウザに指示する。この値は、ピリオド (.) から開始する必要がある
|
sso.singlesignoff = "true"
|
true (デフォルト) に設定すると、sso.apprefix で設定された値と一致する接頭辞値を持つクライアント側のすべての SSO cookie がクライアントのログアウト時にクリアされる
|
sso.userdomain = "sesta.com"
|
このパラメータには、ユーザーの SSO 認証の一部として使用されるドメインを設定する
|
sso.appid.url = "verifyurl"
例 :
sso.ics50.url = "http://sesta.com:8883/VerifySSO?"
sso.msg50.url = "http://sesta.com:8882/VerifySSO?"
|
このパラメータには、Calendar Server 設定のピア SSO ホストの確認 URL 値を設定する。信頼できるピア SSO ホストごとに 1 つのパラメータが必要となる。パラメータには次の要素が含まれる
- アプリケーション ID (appid)。対象となる各 SSO cookie のそれぞれのピア SSO ホストを識別する
- 確認 URL (verifyurl)。ホスト URL、ホストポート番号、VerifySSO? (最後の ? を含む) から構成される
この例では、Calendar Server のアプリケーション ID は ics50、ホスト URL は sesta.com、ポートは 8883 である
Messenger Express のアプリケーション ID は msg50、ホスト URL は sesta.com、ポートは 8882 である
|
表 8-3 は、Communications サーバーの信頼できるサークルテクノロジによって SSO を設定する場合の Messaging Server 設定パラメータを示しています。
表 8-3 Communications サーバーの信頼できるサークルテクノロジを利用して SSO を設定する場合の Messaging Server 設定パラメータ
パラメータ
|
説明
|
local.webmail.sso.enable = 1
|
SSO を有効にするには、パラメータにゼロ以外の値を設定する必要がある
|
local.webmail.sso.prefix = ssogrp1
|
このパラメータには、HTTP サーバーが設定する SSO cookie のフォーマットに使用される接頭辞を指定する
|
local.webmail.sso.id = msg50
|
このパラメータには、Messaging Server の一意のアプリケーション ID (msg50) を指定する
信頼できるそれぞれのアプリケーションは、一意のアプリケーション ID を持つ
|
local.webmail.sso.cookiedomain = sesta.com
|
このパラメータには、HTTP サーバーが設定するすべての SSO cookie の cookie ドメイン値を指定する
|
local.webmail.sso.singlesignoff = 1
|
ゼロ以外の値に設定すると、local.webmail.sso.prefix で設定された値と一致する接頭辞値を持つクライアント側のすべての SSO cookie がクライアントのログアウト時にクリアされる
|
local.sso.appid.url = "verifyurl"
例 :
local.sso.ics50.verifyurl = http://sesta.com:8883/VerifySSO?
local.sso.msg50.verifyurl = http://sesta.com:8882/VerifySSO?
|
このパラメータには、Messaging Server 設定の ピア SSO ホストの確認 URL 値を設定する。信頼できるピア SSO ホストごとに 1 つのパラメータが必要となる。パラメータには次の要素が含まれる
- アプリケーション ID (appid)。対象となる各 SSO cookie のそれぞれのピア SSO ホストを識別する
- 確認 URL (verifyurl)。ホスト URL、ホストポート番号、VerifySSO?(最後の ? を含む) から構成される
この例では、Messaging Server のアプリケーション ID は msg50、ホスト URL は sesta.com、ポートは 8882 である
Calendar Server のアプリケーション ID は ics50、ホスト URL は sesta.com、ポートは 8883 である
|
Messaging Server の SSO の設定については、『Sun Java System Messaging Server 6 2004Q2 管理ガイド』を参照してください。