XML Consortium
XML Consortium
UDDIにおける
国際化・セキュリティー
2002年9月17日
日本アイ・ビー・エム株式会社
吉田 忠行
島田 茂
(UDDI WG)
XML Consortium
XML Consortium
UDDI での国際化(I18N)とは
I18N for Inquiry
I18N for Inquiry
エンドユーザ(人間・プログラム)に対するインターフェースの国
際化
検索に自然な表現を用いたい(いろいろな言語で検索する)
検索結果を言語ごとに調整したい(ソーティングなど)
I18N for Publication
I18N for Publication
ワールドワイドに展開するサービスプロバイダに対する登録
データの国際化
名前,住所などのデータを言語ごとに登録したい
XML Consortium
XML Consortium
UDDI V3 の国際化概要
I18N basic
I18N basic
•XMLを採用•Unicode3.0 を採用(UDDI V3),エンコーディングはUTF-8のみ •名前,住所などに xml:lang を用いて言語を指定
I18N for Inquiry
I18N for Inquiry
•言語特有のソーティング(照合)方法を指定(V3) •検索に用いた言語に依存しない検索結果(V3)
I18N for Publication
I18N for Publication
•住所表記の標準化(V3)XML Consortium
XML Consortium
UDDIの国際化機能(1)
Unicode 3.0の文字を使用可能(V3)
複数言語や,同一言語内での複数スクリプトをサポート
<businessEntity …> ... <name xml:lang=“ja”>日本アイ・ビー・エム</name> <name xml:lang=“ja”>日本IBM</name><name xml:lang=“en”>IBM Japan</name> <name xml:lang=“en”>Nihon IBM</name> ...
XML Consortium
XML Consortium
UDDIの国際化機能(2)
複数の地域に拠点が分かれているサービスプロバイダがその
拠点の記述を可能にする
サービス,工場,倉庫などを別々に記述可能 <businessEntity> … <contacts><contact useType=“sales contact”> <personName> … </personName> …
</contact>
<contact useType=“technical support”> …
</contact> </contacts> …
XML Consortium
XML Consortium
UDDIの国際化機能(3)
住所の構造を標準化(パターン1:自由形式)
国ごとに異なる住所の記述方法に対応 <address xml:lang=“en”…> <aL>1623-14</aL> <aL>Shimotsuruma</aL> <aL>Yamato-shi</aL> <aL>Kanagawa-ken</aL> <aL>Japan</aL> </address> <address xml:lang=“ja”…> <aL>日本国</aL> <aL>神奈川県</aL> <aL>大和市</aL> <aL>下鶴間</aL> <aL>1623-14</aL> </address> aL = addressLineXML Consortium
XML Consortium
UDDIの国際化機能(3)(続き)
tModelKey=“uddi:ubr.uddi.org:postalAddress”UBRにて標準的なアドレス構造を定義(一部抜粋)
Name
Country
Region
City
District
Street
House No.
Building Name
Value
Name
Value
Name
10
90
100
110
120
Building No.
Floor No.
Unit No.
Street Prefix1
Street Suffix1
Company Postal Code
Address Time Zone
City Postal Code
20
30
40
50
170
180
130
250
60
70
80
XML Consortium
XML Consortium
UDDIの国際化機能(3)(続き)
住所の構造を標準化(パターン2:
UBRのtModel使用)(V3)
tModelKey=“uddi:ubr.uddi.org:postalAddress” <address xml:lang=“ja” tModelKey=“…”…>
<aL kN=“Country” kV=“20”>日本国</aL> <aL kN=“Region” kV=“30”>神奈川県</aL> <aL kN=“City” kV=“40”>大和市</aL>
<aL kN=“District” kV=“50”>下鶴間</aL>
<aL kN=“Building Number” kV=“90”>1623-14</aL> </address>
aL = addressLine kN = keyName
XML Consortium
XML Consortium
UDDIの国際化機能(3) (続き)
住所の構造を標準化(パターン2:独自の
tModel使用)(V3)
tModelKey=“uddi:mycompany.com:postalAddress” <address xml:lang=“ja” tModelKey=“…”…>
<aL kN=“Country” kV=“20”>日本国</aL> <aL kN=“Province” kV=“30”>神奈川県</aL> <aL kN=“City” kV=“40”>大和市</aL>
<aL kN=“District” kV=“50”>下鶴間</aL>
<aL kN=“Block Number” kV=“90”>1623</aL> <aL kN=“Building Number” kv=“100”>14</aL> </address> aL = addressLine
kN = keyName kV = keyValue
XML Consortium
XML Consortium
UDDIの国際化機能(4)
言語特有のソーティング(照合)順序を指定(
V3)
<find_business xmlns=“urn:uddi-org:api_v3”> <findQualifiers> <findQualifier> uddi:uddi.org:sortOrder:JIS-X4061 </findQualifier> ... </findQualifiers> </find_business>Unicode標準のソーティングではなく,日本語特有の
方法を指定できる
XML Consortium
XML Consortium
UDDI Serverでのソーティング
『サービス
Xのプロバイダを検索したい(ソートAを指定)』
検索結果を ソートAを実装した サービスプロバイダへ ③ ④UDDI Server
(Service Broker)
Service
Requester
ソートA指定 find_business / ソートA指定 ① ② ⑤Sort Service
Provider
PDAなどのThin Client ⑥①→②→③→④→⑤→⑥
End User /
Program
自前でソートする場合ソートAを指定しない)①→②→⑤→⑥
XML Consortium
XML Consortium
UDDIの国際化機能(5)
サーチに用いた言語に依存しないサーチ結果(V3)
Unicode Normalization Form C によってデータを正規化(normalization)する XMLタグや属性,名前空間,空白なども正準化(canonicalization)する
Saved
Data
find_xxx/get_xxx
UDDI
Server
Requester
Retrieved
Data
デジタル署名が 同じXML Consortium
XML Consortium
XMLデータの正規化
Unicode Normalization Form C によって正規化する
XMLタグや属性,名前空間,空白なども正準化する
Schema Centric XML Canonicalization
(http://uddi.org/pubs/SchemaCentricCanonicalization.htm)
Å
U+212B ANGSTROM SIGNÅ
U+00C5LATIN CAPITAL LETTER A WITH RING ABOVE
A
。
U+0041 LATIN CAPITAL LETTER A U+030A COMBINING RING ABOVE Form C Form DXML Consortium
XML Consortium
UDDIの国際化の課題
•地域固有のTaxonomyの取り込み (Built-inとして)
•地域間のTaxonomyの変換方法の提供
For business
For business
For usability
For usability
•言語特有の情報を活かしたサーチ方法の提供
•言語特有のソート(照合)方法の提供(日本語以外も)
•UDDIサーバの出力メッセージ(エラーなど)の国際化
XML Consortium
XML Consortium
UDDI V3 セキュリテイー(1)
Security Policy API
UDDIノードから、AuthorizeされたTokenを用い
て、
UDDIのAPIにおけるセキュリテイー強化を図る。
XML Digital Signatures on UDDI data
UDDIのいくつかの要素において、標準のXML
XML Consortium
XML Consortium
UDDI V3 セキュリテイー(2)
UDDI Node operator
1. Tokenの取得要求
get_authToken
登録されている
データ
2. Tokenの取得
Requester
3. UDDI APIによる
Secureされたアクセス
4. Tokenの破棄
discard_authToken
XML Consortium
XML Consortium
UDDI V3 セキュリテイー(3)
UDDI Node operator
UDDIに登録できるデータ
(businessEntity, tModel, etc.)
電子署名化されたデータ
publication
電子署名化 されているデータService
Provider
XML Consortium
XML Consortium
Security Policy API
Security Policy API setは、以下の2つのAPIからなる
discard_authToken
get_authToken (userID, cred)
get_authTokenの属性
userID : UDDI Nodeから与えられているユーザーID
cred : UserIDのパスワード
Tokenはオプショナルなセキュリテイー機能である
UDDI Node によっては実装しないところもある
Inquiry,Publication,Custody/OwnerShip Transfer,
Subscription, Value Setなど、すべてのAPIでauthInfoとし
て実装可能である
XML Consortium
XML Consortium
UDDI要素の電子署名
以下の
UDDIの要素においてXMLの電子署
名は使用可能である
businessEntity
businessService
bindingTemplate
tModel
publisherAssertion
XML Consortium
XML Consortium
UDDIにおけるXML電子署名の例
tModelKey=uddi:uddi.org:keyGenerator の定義XML文書に署名
<tm:tModel tm:tModelKey=“...” xmlns:tm=“urn:uddi-org:api_v3”> <tm:name>uddi-org:keyGenerator<tm:name>
...
<ds:Signature xmlns:ds=“http://www.w3.org/2000/09/xmldsig#”> <si:SignedInfo xmlns:si=“http://www.w3.org/2000/09/xmldsig#”>
<si:CanonicalizationMethod Algorithm=“...”/> <si:SignatureMethod Algorithm=“...”/> <si:Reference URI=“...”> <si:DigestMethod Algorithm=“...”/> <si:DigestValue>pel/qelknelanmwre...</si:DigestValue> </si:Reference> </si:SignedInfo> <ds:SignatureValue>uoiwoNalke2k9ek...</ds:SignatureValue> <ds:KeyInfo> ... 公開鍵の情報 ... <ds:KeyInfo> <ds:Signature> </tm:tModel>