アイデンティティ管理の新しい教科書


第3回 OpenID/SAMLのつなぎ方とその課題


日本電信電話株式会社
NTT情報流通プラットフォーム研究所
伊藤 宏樹

2010/1/22
“The Venn of Identity”からスタートした、ID管理方式の相互運用方式の模索。第3回では具体的な方式を解説します(編集部)

 第2回「ID管理技術をつなぐ女神、コンコーディア」では、ID管理方式の「相互運用」という考え方について解説しました。今回は前回の内容を踏まえ、OpenIDとSAMLを例に具体的な相互接続の方式とその課題について説明します。

 OpenIDとSAMLをつなぐ

 それでは、OpenIDとSAMLとの相互接続にあたって検討されたユースケースを見ていきましょう。

 OpenID、SAMLはいずれも、サービス間で認証結果を共有する方式で、相互連携が必要とされるユースケースも「プロキシモデル」に基づいています。2種類の認証連携方式の「サービス提供者」と「認証者」の関係が、図1に示す関係で構成されます。

図1 サーバ間の依存関係例(構成1-1)

 図1の「方式A」「方式B」にOpenIDとSAMLのそれぞれの仕様が当てはまります。すなわち、最終的にユーザーにサービスを提供するサーバAがOpenID RPである場合と、SAML SP である場合です。

 本稿では、それぞれを「OpenID RP向けの認証をSAML IdPで行う」ケース、「SAML SP向けの認証をOpenID RP で行う」ケースと呼ぶことにします。

 OpenID RP向けの認証をSAML IdPで行う

 コンコーディアでの「相互運用ユースケース」に関する登場人物の定義と提案される方式を含む動作シナリオをもとに議論がなされています。「OpenID RP向けの認証をSAML IdPで行う」場合に登場するサービスと、ユーザー、サービスの前提条件は以下の通りです。

  • ユーザー
    • 通販サイト、認証サービス1、認証サービス2へのアカウントを持つ。
  • 通販サイト
    • OpenID RP機能を持ち、認証サービス1との間で認証連携が可能。
    • ユーザーの決済時に多要素認証(複数手段による認証)を必要としており、認証サービスOpenID PAPEを用いて認証サービス1に要求可能。
  • 認証サービス1
    • OpenID OP機能を持ち、ID、パスワードの入力によりユーザーの認証結果をRPに提供可能。
    • SAML SP機能を持ち、認証サービス2との間で認証連携が可能。
    • OpenID OP機能として受け取った認証要求のうち、認証サービス1にて処理できない要件を認証サービス2に再要求可能(プロキシ機能)。
  • 認証サービス2
    • SAML IdP機能を持ち、ユーザーに配布したユーザー証明書による認証結果を認証サービス1に提供可能。

 上記要件のサービスをユーザーがどのように利用するのか、手順を追ったシナリオを以下に提示します。

図2 OpenID RP 向け認証をSAML IdPで行う
  1. ユーザーが通販サイトで決済を要求する。
  2. 通販サイトは認証サービス1に対し、多要素認証による認証をOpenIDのメッセージを用いて要求する。
  3. 認証サービス1はID、パスワード入力によるユーザー認証を行う。
  4. 認証サービス1は自分のサイトで2個目の認証手段を持たないため、認証サービス2でPKIによる認証をSAMLのメッセージを用いて要求する。
  5. 認証サービス2はPKIによるユーザー認証を行う。
  6. 認証サービス2は認証サービス1に対し、認証結果(OTPで認証したこと)をSAMLのメッセージとして応答し、それを受けて認証サービス1は通販サイトに対し、認証結果(多要素認証を行ったこと)をOpenIDのメッセージとして応答する
  7. 通販サイトは認証サービス1の結果を受けてユーザーに対し、サービスを提供する。

 以上の経過でお気づきかもしれませんが、認証サービス1はシナリオ上の手順4、および手順6にてOpenID形式で記述された要求/応答メッセージを、SAML形式で記述された要求/応答メッセージに変換する必要があります。この「メッセージ変換」については次回以降にその詳細を解説します。

 なお、手順2における「多要素認証による認証の要求」には「OpenID Provider Authentication Policy Extension 1.0」(PAPE)と呼ばれる拡張仕様を利用しています。これは「OpenID Authentication 2.0」仕様で規定されていなかった「OPに対する認証条件の要求」を行う仕様で、認証サービスに対し「多要素認証を行うこと」「フィッシング対策を施すこと」「NIST(米国標準技術研究所)が定める認証結果の保障レベルを満たすこと」などを要求することが可能です。

1/3

Index
OpenID/SAMLのつなぎ方とその課題
Page1
OpenIDとSAMLとをつなぐ
OpenID RP向けの認証をSAML IdPで行う
  Page2
SAML SP向け認証をOpenID OPで行う
  Page3
相互運用を考える上でのポイント


アイデンティティ管理の新しい教科書 連載インデックス


Security&Trust フォーラム 新着記事
@ITメールマガジン 新着情報やスタッフのコラムがメールで届きます(無料)

注目のテーマ

Security & Trust 記事ランキング

本日 月間