Jump to content 日本-日本語
日本HPホーム 製品とサービス サポートとドライバ ソリューション ご購入方法
≫  お問い合わせ
日本HPホーム
ソフトウェア  >  セキュリティ

HP IceWall SSO

技術トピックス:グローバルシングルサインオン特集(後編)

HP IceWall ファミリー

お問い合わせ
技術レポート
IceWallニュース
オンラインデモ
カタログ
イベント・セミナー情報
HP IceWall SSO
HP IceWall Identity Manager
HP IceWall MCRP
HP IceWall File Manager
HP IceWall QFS
HP IceWall SSO (English)
HP IceWall ファミリー
IceWall サイトマップ
日本HP セキュリティページ
日本HP メールニュース
日本HP サイトマップ
IceWallについてのお問い合わせ 03-6416-6660
※HP IceWall SSO は株式会社SCCとの共同開発製品です。
コンテンツに進む
記事についてのお問い合わせはこちら

SAML1.1によるGSSO

GSSOの標準仕様は、SAML1.x → Liberty ID-FF → SAML2.0の順に発展してきています。そこで、最も基本形といえるSAML1.1によるGSSOの仕組みについてお話します。

これだけは覚えておきたいSAML用語 - 1 -

アサーション
  • assertion。直訳すると"主張"。
  • 「このユーザは認証済です。」(認証ステートメント)、「このユーザの属性情報はxxxです。」(属性ステートメント)等の"主張"を伝えるメッセージ。
  • 他のサイトが発行したアサーションを「信用する」ことでSAMLによるサイト間の連携が成り立ちます。←これが一番大事!
アサーションとは何か?
SAMLによるGSSOでは、ユーザがアカウントを持つサイトが「ユーザを認証した」ことを他のサイトが「信用」して、認証済とみなします。
ここで、おさらいですが、「認証」とは、本人であることを確認する行為です。例えば、アクセスしてきたユーザがユーザIDとそれに対応する正しいパスワードを入力した、ということで、確かに今アクセスしているのはそのユーザIDの人だ、という確認をします。この場合、実際に認証を行うことができるのはユーザIDとパスワードが登録されたサイトだけです。
つまり、他のサイトは、ユーザの登録サイトが「認証した結果この人はユーザIDがxxの人です。」という"主張"を「信用」することで、「認証済み」とみなすわけです。そして、この"主張"のことを「アサーション」と呼びます。

アサーションによる認証の連携

アサーションによる認証の連携の利点
ユーザは自分のアカウントが登録されているサイトで直接、認証を受けます。他のサイトには、アサーションが渡されるだけです。ここがポイントです。
つまり、

  1. ユーザID/パスワードといったセキュリティートークンが連携する他のサイトに流れることがありません。
  2. 2. 本人確認の方式が、ICカード、ワンタイムパスワード、指紋による生体認証他、どんな認証方式であろうとも、連携する他のサイトの仕組みには一切影響を及ぼしません。

アサーションを使わない例

GSSOの基本フロー

つぎに、アサーションがどうやってサイト間で引き渡されるのか、GSSOの基本フローについてご説明します。
ここでは、アーティファクトを使う方式(Browser/Artifact profile)で説明します。

これだけは覚えておきたいSAML用語 - 2 -

アーティファクト
  • アサーションへのリファレンスです。
  • 使い捨てのランダムな文字列と発行したサイトの識別子で構成されます。
  • ブラウザのリダイレクト経由でアサーションをサイト間で引き渡すことを避けるため、アーティファクトを介しています。
  • アーティファクトを使う最大の理由は、アサーションのサイズです。(アサーションはでかい!)
  • なお、SAML仕様では、アサーションをブラウザのリダイレクト経由で直接引き渡す方式(Browser/POST profile)も規定されていますが、アーティファクトを使う方式(Browser/Artifact profile)の方が一般的です。
GSSOの基本フロー
  1. 1. ユーザは自分のアカウントが登録されているサイトAにログインします。
  2. ポータル画面から、サイトBのWebアプリケーションへのリンクをたどります。
  3. サイトAはユーザにアーティファクトを発行してユーザをサイトBにリダイレクトします。
  4. ユーザは、アーティファクトをサイトBに提示します。
  5. サイトBは、アーティファクトをサイトAに提示します。
  6. サイトAは、自分がどのユーザに発行したアーティファクトであるかわかるため、対応するユーザのアサーションを発行して返信します。
  7. サイトBは、アサーションの中身をチェックします。そのユーザがサイトAで「認証済であること」、および、送られてきた属性情報を信用して、ユーザにセッションを発行します。
  8. サイトBは、ユーザにWebアプリケーションへのアクセスを許可します。
その後、このユーザは、サイトA、サイトBで再度認証を受けずにWebアプリケーションにアクセスできます。(グローバルシングルサインオン)

GSSOのアクセスパターン
前記の例ではポータルからリンクをたどっていますが、アクセスパターンは以下の2つに分類されています。

  1. Source-Site First
    • "ポータル型"アクセス。
    • ユーザは、自分がアカウントを持つサイトにログイン後、リンクをたどって連携先のサイトにアクセスします。
    • リンクはSAMLを意識したURLになっています。
  2. Destination-Site First
    • "直打ち"アクセス。
    • ユーザは、未認証のまま、URLを直打ちする等して連携先のサイトのアプリケーションにアクセスします。
Destination-Site First
このアクセスパターンは「Source-Site First」を少しだけ応用したものです。
  1. ユーザは、未認証のまま、URLを直打ちする等して連携先のサイトのアプリケーションにアクセスします。
  2. 未認証であるため、ユーザは一旦、アカウントを持つサイトにリダイレクトされて認証を受ける必要があります。
この際に、以下の2点の「細工」をすると、その後は「Source-Site First」と同じフローとなります。
  • ユーザのアカウントが登録されたサイトを判定します。(選択画面やクッキーの利用等。)
  • ユーザがもともとアクセスしようとしていたアプリケーションのURLをTARGETパラメータとしてセットしてから、アーティファクトを発行するサービスにリダイレクトします。
HP IceWall SSOでは、ユーザExitルーチンとCGIプログラムで実装した実績があります。

Destination-Site First

アサーションは信用できるか?
繰り返しになりますが、SAMLによるGSSOは、アサーションを信用することで成り立ちます。このため、SAML仕様ではアサーションに対する攻撃については特に考慮されています。例として、以下のような規定があります。

  • アーティファクトの一意性、有効期限。(リプレイ攻撃防止)
  • 発行者によるXML署名。(改ざん防止)
  • SSLによる通信経路の暗号化。(盗聴防止)
ただし、重要なことがひとつ。アサーションを発行するサイトの運用が信用できるかは、インタフェース仕様ではどうにも規定できません。

ログアウトは?
ここまで読んでいただくと、では、ログアウトはどうなるのか、という疑問がわくと思います。残念ながら、SAML1.1では、「シングルサインオン」はできますが、「シングルログアウト」という概念はありません。シングルログアウトは、SAML1.xから発展したLiberty ID-FFやSAML2.0で規定されています。

おまけ - IDフェデレーション(account linkage)
サイト間の認証の連携のバリエーションとして、「IDフェデレーション」(account linkage)があります。ユーザが各サイトに既にアカウントを持っている場合に、1つをマスターアカウントとして他のサイトのアカウントをそれに結びつける機能です。一旦アカウントを結びつけた後は、マスターアカウントでログインをすることでGSSOが実現できます。これは、SAML1.x仕様の拡張仕様であるLiberty ID-FFではじめて規定された機能です。SAML2.0にも取り込まれました。

以上、GSSOを必要とするシステム例から、標準仕様、SAML1.1によるGSSOについてほんの触りだけご紹介しました。Webシステムの益々の発展に伴って、SSOの範囲は拡大していく傾向にあります。まずは、「アサーション」を信用する、という考え方を記憶に留めていただけたら、と思います。
2005.3.23 日本HP コンサルティング・インテグレーション統括本部 テクニカルコンサルタント 山口 晃
  関連技術トピックス
≫ グローバルシングルサインオン特集:GSSO の基礎(本トピックス 前編)
      グローバルシングルサインオン特集:SAML1.1によるGSSO(本トピックス 後編)
  グローバルシングルサインオン特集:SAML2エージェントによるSPソリューション
≫ 前編へ戻る
≫ 技術レポート一覧へ戻る
≫ このページのトップへ
印刷用画面へ
プライバシー 本サイト利用時の合意事項 ウェブマスターに連絡
© 2008 Hewlett-Packard Development Company, L.P.