XML Consortium
XML Consortium
© XML Consortium © XML Consortiumセキュリティ部会の取り組み
セキュリティ関連XML規格の解説
2005年1月13日
XMLコンソーシアム セキュリティ部会
岡村 和英
(株式会社ネット・タイム)
XML Consortium
XML Consortium
2 -© XML Consortium Security SIG © XML Consortium Security SIG 13-Jan-2005アジェンダ
n
セキュリティ部会の取り組み
n活動の目的、内容、実績
n
XMLをとりまくセキュリティ技術
nセキュリティ技術マップ
XML Consortium
XML Consortium
3 -© XML Consortium Security SIG © XML Consortium Security SIG 13-Jan-2005セキュリティ部会の取り組み
n
活動の目的
セキュリティ関連XML規格を中心に
n技術規格の調査
nビジネスシステムへの適用に向けたモデルの検討
nサンプルコーディングを実施することにより、問題点
の解決方法や具体的な実装ノウハウを蓄積
n得られた知識を外部公開することにより普及啓蒙
活動を行う
XML Consortium
XML Consortium
4 -© XML Consortium Security SIG © XML Consortium Security SIG 13-Jan-2005セキュリティ部会の取り組み
(Cont.)
n
活動の内容
nセキュリティ関連XML規格の調査・翻訳・解説
nモデルの構築とアプリケーションの検討
nビジネス適用事例の調査収集
n関連ツール等の調査・比較検討
nApache Project等のオープンプロダクトの翻訳・
解説
n実装による技術検証 (他の部会との連係による
実証実験)
XML Consortium
XML Consortium
5 -© XML Consortium Security SIG © XML Consortium Security SIG 13-Jan-2005活動の実績
n
今年度の目標
nWebサービスセキュリティ規格の翻訳
nセキュリティ関連XML規格の調査
nセキュリティモデルの検討と解説
2001
2001
年度
年度
2002
2002年度
年度
2003
2003年度
年度
XKMS
XKMSを使った
を使った
電子署名システム
電子署名システム
XML
XML暗号による部分暗号と
暗号による部分暗号と
SAML
SAMLによる
によるSSO
SSOの実現
の実現
SAML
SAML
と
と
XML
XML
セキュリティ
セキュリティ
による電子委任状システム
による電子委任状システム
2004
2004年度
年度
セキュリティ関連
セキュリティ関連XML
XML規格調査
規格調査
実装実験
XML Consortium
XML Consortium
6 -© XML Consortium Security SIG 13-Jan-2005XMLをとりまくセキュリティ技術
セキュリティの階層
セキュリティ関連XML規格一覧
標準化の状況
規格の関連
XML Consortium
XML Consortium
7 -© XML Consortium Security SIG © XML Consortium Security SIG 13-Jan-2005セキュリティの階層
= 改竄の防止(電子署名)
監査
否認防止
完全性・
機密性
識別・
認証
ポリシー
= なりすましの防止(電子署名)
= 秘匿(暗号化)
= 捏造の防止(電子署名)
= 適用・運用方針、ライフサイクル
= 存在の確認(タイムスタンプ)
= 権限の確認(アサーション)
認可・
承認
XML Consortium
XML Consortium
8 -© XML Consortium Security SIG © XML Consortium Security SIG 13-Jan-2005セキュリティ関連XML規格一覧
認 証 機 関 A 企 業 B 企 業 C サイト D サイト XML-Signature W3C:勧告、RFC3275 2002-02-12 XACML OASIS:標 準 2003-02-06 情 報 XPath Filter 2.0 W3C:勧 告 2002-11-08 Exclusive XML C14n 1.0 W3C:勧 告 2002-07-18 XKMS 2.0 W3C:勧告候補 2004-04-05 XML Encryption W3C:勧 告 2002-12-10 コンテンツの 詳細指定 Canonical XML 1.0 W3C:勧告、RFC3076 2001-03-15 SAML 2.0 OASIS:CD03 2004-12-14 XACML 1.1 OASIS:CS 2003-08-07 SAML 1.1 OASIS:標 準 2003-09-02 認証と承認 XACML 2.0 OASIS:CD04 2004-12-06 情報アクセス ポリシー 暗号・復号 WSS OASIS:標 準 2004-04-06 SOAPの 暗号・署名・認証情報 Decryption Transform W3C:勧 告 2002-12-10 署名後の 暗号・復号 鍵の登録 証明書 電子署名 サーバ DSS OASIS:CD 2004-06-28 署名と検証 XML文 書 の 正規化XML Consortium
XML Consortium
9 -© XML Consortium Security SIG © XML Consortium Security SIG 13-Jan-2005標準化の状況
CD03:OASIS (2004/12/14) WD11:OASIS (2004/5/14) 2.0 XACML WD21:OASIS (2004/5/11) CS:OASIS (2003/8/7) WD13:OASIS (2004/5/31) 標準:OASIS (2003/9/2) 標準:OASIS (2004/4/6) 勧告候補:W3C (2004/4/5) 2003年度 勧告:W3C (2001/3/30) 1.0 XKMS LC:OASIS (2003/5/3) 1.1 1.1 標準:OASIS (2003/2/6) ドラフト:OASIS (2002/7/1) 1.0 標準:OASIS (2002/11/5) ドラフト:OASIS (2002/7/1) 1.0 DSS SAML WSS Canonical XML Exclusive XML C14n XML-Signature XML Encryption セキュリティ関連規格 2.0 2.0 CD04:OASIS (2004/12/6) CD:OASIS (2004/06/28) WD11:OASIS (2003/3/3) 草案:業界団体 (2002/4/5) WD:W3C (2003/4/18) 作業案:W3C (2002/3/18) 勧告:W3C (2001/3/15) 勧告:W3C (2002/7/18) 勧告候補:W3C (2002/5/24) 勧告:W3C (2002/2/12) 勧告:W3C (2002/12/10) 勧告候補:W3C (2002/3/4) 2004年度 2002年度 2001年度LC:Last Call / CS:Committee Specification / WD:Working Draft / CD:Committee Draft
XML Consortium
XML Consortium
10 -© XML Consortium Security SIG © XML Consortium Security SIG 13-Jan-2005規格の関連
XML-Signature
XACML
<利用>
<利用>
<利用>
PKI
<依存>
<依存>
<依存>
<依存>
<利用>
<KeyInfo>
XML Encryption
XKMS
WSS
SAML
XML Consortium
XML Consortium
11 -© XML Consortium Security SIG 13-Jan-2005WSS (Web Services Security)
WS-Security 2004
XML Consortium
XML Consortium
12 -© XML Consortium Security SIG © XML Consortium Security SIG 13-Jan-2005WSS (Web Service Security)
n
OASIS:Web Services Security TC
http://www.oasis -open.org/committees/wss/
n2004年4月6日 OASIS標準
nセキュリティ上の目標
n安全なWebサービスの実現
n 完全性、秘匿性、セキュリティ・トークン
n主な仕様
nCore仕様
n SOAP Message Security 1.0 (WS-Security 2004) (OASIS標準)
n
プロファイル
n Username Token Profile 1.0 (OASIS標準)
n X.509 Token Profile 1.0 (OASIS標準)
n SAML Token Profile 1.0 (OASIS標準, 2004/12/1)
n REL Token Profile 1.0 (OASIS標準, 2004/12/19)
n Kerberos Token Profile 1.0 (WD05, 2004/7/27)
n SOAP Message Security: Minimalist Profile (MProf) 1.0 (WD1.5,
2003/3/7)
n SOAP Messages with Attachements (SwA) Profile 1.0 (WD14,
2004/11/15)
XML Consortium
XML Consortium
13 -© XML Consortium Security SIG © XML Consortium Security SIG 13-Jan-2005WS-Security 2004
n
概要
nメッセージの完全性と秘匿性の為の、SOAPメッ
セージングの拡張
n広範囲のセキュリティ・モデルと暗号技術に適用して利
用可能
nセキュリティ・トークンとメッセージ内容の関連付け
nセキュリティ・トークンの形式に依存しない、汎用的な
仕組み
XML Consortium
XML Consortium
14 -© XML Consortium Security SIG © XML Consortium Security SIG 13-Jan-2005WS-Security 2004
nTOC
n目標と要件
n記法と用語
nメッセージ保護の仕組み
n メッセージ・セキュリティ・モデル
nID参照
nSecurityヘッダ
nセキュリティ・トークン
nトークン参照
n署名
n暗号化
nセキュリティ・タイムスタンプ
nエラー処理
nセキュリティの考慮
n相互運用の注記
nプライバシの考慮
XML Consortium
XML Consortium
15 -© XML Consortium Security SIG © XML Consortium Security SIG 13-Jan-2005目標と要件
n
目標
n安全なSOAPメッセージの交換
nセキュリティ・トークンの受け渡し
nメッセージの完全性
nメッセージの秘匿性
n
要件
n幅広いセキュリティ・モデルのサポート
n複数のセキュリティ・トークン形式
n複数の信頼ドメイン
n複数の署名形式
n複数の暗号技術
nEnd-to-Endのメッセージコンテントセキュリティ
XML Consortium
XML Consortium
16 -© XML Consortium Security SIG © XML Consortium Security SIG 13-Jan-2005SSLとの比較
n
SSL: Point-to-Point
nトランスポート層のセキュリティ
n中継者へのセキュリティ確保が困難
n
WSS: End-to-End
nメッセージコンテントのセキュリティ
n中継者にもセキュリティを確保
提供者
利用者
中継者
HTTPS
HTTPS
HTTPS
HTTPS
提供者
利用者
中継者
WS
WS
-
-
Security
Security
XML Consortium
XML Consortium
17 -© XML Consortium Security SIG © XML Consortium Security SIG 13-Jan-2005メッセージセキュリティモデル
n
セキュリティ上の脅威
n敵対者によるメッセージの改変・
読み取り
n不正なセキュリティ申告
n
SOAPメッセージの保護と認証
nデジタル署名と組み合わせたセキュリティ・トークン
の利用
nXML-Signatureの利用(メッセージ完全性)
nXML Encryptionの利用(メッセージ秘匿性)
XML Consortium
XML Consortium
18 -© XML Consortium Security SIG © XML Consortium Security SIG 13-Jan-2005ID参照
n
他のメッセージ要素への参照
n署名の参照
n署名とセキュリティ・トークンの関連付け
n
メッセージの完全なスキーマを知らなくても要
素の識別・参照が可能
nグローバル「
wsu:Id」
属性
nXML-Signature要素上のローカルID属性
nXML Encryption要素上のローカルID属性
XML Consortium
XML Consortium
19 -© XML Consortium Security SIG © XML Consortium Security SIG 13-Jan-2005Securityヘッダ
nSOAP actor/role形式での特定の受信者を対象としたセ
キュリティ関連情報を付与
n複数のセキュリティ・トークン
n複数のセキュリティ・トークン参照
n複数の電子署名
n複数の暗号化情報
n0または1つのタイムスタンプ
n<wsse:Security>ヘッダ要素で指定
n複数のSecurityヘッダ部で同じactor/roleを指定することは出来ない
n1つのSecurityヘッダ部だけがactor/roleを省略できる
n子要素を追加する場合は、既存の子要素の前に挿入する
nメッセージを作成した際の処理順序が表わされる
n子要素間での前方参照がないため、受信側でヘッダ部に現れる順序
に処理できることが保証される
n鍵運搬要素は、鍵を利用する要素より前に配置する
XML Consortium
XML Consortium
20 -© XML Consortium Security SIG © XML Consortium Security SIG 13-Jan-2005セキュリティ・トークン
n
利用者名トークン
n利用者名の提示
n<wsse:UsernameToken>要素で指定
n
バイナリ・
セキュリティ・トークン
nバイナリ符号化された(
非XML形式の)セキュリティ・トーク
ンの提示
n X.509証明書、Kerberosチケットなど
n<wsse:BinarySecurityToken>要素で指定
n
XMLトークン
nXML形式のセキュリティ・トークンの提示
n SAMLアサーション、RELライセンスなど
n<wsse:Security>ヘッダに直接挿入
XML Consortium
XML Consortium
21 -© XML Consortium Security SIG © XML Consortium Security SIG 13-Jan-2005s11:Envelope
s11:Header
s11:Body
wsse:Security
s11:actor (s12:role)
メッセージ構造
wsse:UsernameToken
saml:Assertion
wsse:Username
wsse:BinarySecurityToken
ValueType
EncodingType
1..*
0..*
0..*
0..*
XML Consortium
XML Consortium
22 -© XML Consortium Security SIG © XML Consortium Security SIG 13-Jan-2005トークン参照
nどこかに存在するセキュリティ・トークンを参照
n<wsse:SecurityTokenReference>要素で指定
n<ds:KeyInfo>の子要素としても利用可
n直接参照
nURIを利用して外部トークンを直接参照
n<wsse:Reference>子要素で指定
n鍵識別子
nトークンを表現するバイナリ符号化された鍵識別子でトークンを参照
n<wsse:KeyIdentifier>子要素で指定
n鍵名
nセキュリティ・トークンの名称で参照
n<ds:KeyName>要素を利用
n埋め込まれた参照
n任意のセキュリティ・トークンを直接埋め込む
n<wsse:Embedded>子要素で指定
XML Consortium
XML Consortium
23 -© XML Consortium Security SIG © XML Consortium Security SIG 13-Jan-2005wsse:Embedded
メッセージ構造
wsse:Security
ds:KeyInfo
wsse:SecurityTokenReference
ds:KeyName
saml:Assertion
wsse:Reference
URI
ValueType
wsse:KeyIdentifier
ValueType
EncodingType
0..*
XML Consortium
XML Consortium
24 -© XML Consortium Security SIG © XML Consortium Security SIG 13-Jan-2005署名
n
メッセージ完全性の実現
n
セキュリティ・トークンの確認
n
XML-Signature標準に対応
n<ds:Signature>要素を利用
nDetached形式で<wsse:Security>ヘッダに含める
nExclusive XML Canonicalization
n
SOAP Message Normalization
n
STR Dereference Transform
n