Cosminexus Webサービスセキュリティ　使用の手引

解説・手引・文法書

3020-3-M48-20

目　　次

前書き

変更内容

はじめに

1.　Webサービスセキュリティの概要

1.1　Webサービスセキュリティとは

1.1.1　WebサービスセキュリティとSOAPとの関係

1.1.2　WebサービスセキュリティとXMLセキュリティとの関係

1.2　Cosminexusが提供するWebサービスセキュリティ機能

1.2.1　SOAPメッセージの完全性を保証する

1.2.2　SOAPメッセージの秘匿性を保証する

1.2.3　SOAPメッセージの認証をサポート

2.　開発または実行に必要な製品

2.1　開発に必要な製品

2.1.1　開発時の前提OS

2.1.2　開発時の前提プログラム

2.1.3　開発時のプログラム構成例

2.2　実行に必要な製品

2.2.1　実行時の前提OS

2.2.2　実行時の前提プログラム

2.2.3　実行時のプログラム構成例

3.　Webサービスセキュリティ機能を使用する

3.1　定義ファイルの設定

3.1.1　Webサービスセキュリティ機能定義ファイル

3.1.2　Webサービスセキュリティポリシー定義ファイル

3.2　署名付与／検証機能を設定する

3.2.1　署名を付与する個所をパート名で指定する

3.2.2　署名を付与する個所をID属性で指定する

3.3　暗号化／復号化機能を設定する

3.3.1　暗号化する個所をパート名で指定する

3.3.2　暗号化する個所をID属性で指定する

3.4　認証機能を設定する

3.5　メッセージに有効期限を設定する

3.6　定義ファイルの構文をチェックする

3.7　定義ファイルに関する注意事項

3.8　実行環境に合わせて設定を変更する

3.8.1　環境設定ファイルの記述規則

3.8.2　環境設定ファイルの設定項目

3.9　Webサービスセキュリティ機能の実装手順

3.9.1　サーバ側の実装手順

3.9.2　クライアント側がWebアプリケーションの場合の実装手順

3.9.3　クライアント側がコマンドラインJavaアプリケーションの場合の実装手順

3.9.4　JAASログインモジュールの実装時の注意

4.　Webサービスセキュリティ機能が提供するコマンド

4.1　共通鍵生成コマンド（CWSSCreateSecretKey）

4.2　定義ファイル構文チェックコマンド（CWSSConfCheck）

5.　Webサービスセキュリティ機能が提供するAPI

5.1　インタフェースおよびクラスの一覧

5.2　 WSSElementProxyFactoryクラス（セキュリティ項目操作クラスの生成）

newWSSElementProxy（スタブクラスから生成）

newWSSElementProxy（メッセージクラスから生成）

newWSSElementProxy（実装クラスから生成）

getWSSElementProxy（スタブクラスから生成）

getWSSElementProxy（メッセージクラスから生成）

getWSSElementProxy（実装クラスから生成）

5.3　 WSSElementProxyクラス（セキュリティ項目の操作）

getWSSUsernameToken

setWSSUsernameToken

removeWSSUsernameToken

getRole

setRole

5.4　 WSSUsernameTokenクラス（UsernameToken要素の操作）

コンストラクタ

getUsername

setUsername

getPassword

setPassword

getId

setId

getPasswordType

setPasswordType

getNonce

getCreated

5.5　 WSSUsernameToken.PasswordTypeインタフェース（PasswordType要素の操作）

5.6　 WSSExceptionクラス（例外情報の取得）

getMessage

6.　障害対策

6.1　トレースを収集する

6.1.1　トレースの内容

6.1.2　トレースの出力先

6.1.3　トレースの重要度

7.　メッセージ一覧

7.1　メッセージの形式

7.2　メッセージの内容

7.2.1　KDCGAで始まるメッセージ

7.2.2　KDCGCで始まるメッセージ

7.2.3　KDCGFで始まるメッセージ

7.2.4　KDCGJで始まるメッセージ

7.2.5　KDCGKで始まるメッセージ

7.2.6　KDCGOで始まるメッセージ

7.2.7　KDCGPで始まるメッセージ

7.2.8　KDCGSで始まるメッセージ

7.2.9　KDCGWで始まるメッセージ

付録

付録A　標準仕様への対応

付録A.1　WS-Security仕様のサポート範囲

付録A.2　XML署名標準仕様のサポート範囲

付録A.3　XML暗号標準仕様のサポート範囲

付録B　下位バージョンからの移行手順

付録C　定義ファイルの項目の詳細

付録C.1　Webサービスセキュリティ機能定義ファイルの項目

付録C.2　Webサービスセキュリティポリシー定義ファイルの項目

付録D　用語解説

索引

[他社商品名称に関する表示]

All Rights Reserved. Copyright (C) 2006, 2007, Hitachi, Ltd.

前書き

■ 対象製品

●適用OS：Windows Server 2003，Windows Server 2003 R2，Windows Vista，Windows XP

P-2443-7F74　 uCosminexus Developer Professional　 07-60
P-2443-7T74　 uCosminexus Service Architect　 07-60※

●適用OS：Windows Server 2003，Windows Server 2003 R2，Windows Server 2003（x64），Windows Server 2003 R2（x64）

P-2443-7K74　 uCosminexus Application Server Enterprise　 07-60
P-2443-7S74　 uCosminexus Service Platform　 07-60※

●適用OS：AIX 5L V5.2，AIX 5L V5.3

P-1M43-7K71　 uCosminexus Application Server Enterprise　 07-60※
P-1M43-7S71　 uCosminexus Service Platform　 07-60※

●適用OS：HP-UX 11i V2（IPF），HP-UX 11i V3（IPF）

P-1J43-7K71　 uCosminexus Application Server Enterprise　 07-60※

●適用OS：Red Hat Enterprise Linux AS 3（x86），Red Hat Enterprise Linux AS 4（x86），Red Hat Enterprise Linux ES 3（x86），Red Hat Enterprise Linux ES 4（x86），Red Hat Enterprise Linux AS 3（AMD64 & Intel EM64T），Red Hat Enterprise Linux AS 4（AMD64 & Intel EM64T），Red Hat Enterprise Linux ES 3（AMD64 & Intel EM64T），Red Hat Enterprise Linux ES 4（AMD64 & Intel EM64T）

P-9S43-7K71　 uCosminexus Application Server Enterprise　 07-60※

●適用OS：Red Hat Enterprise Linux AS 3（x86），Red Hat Enterprise Linux AS 4（x86），Red Hat Enterprise Linux 5 Advanced Platform（x86），Red Hat Enterprise Linux ES 3（x86），Red Hat Enterprise Linux ES 4（x86），Red Hat Enterprise Linux 5（x86），Red Hat Enterprise Linux AS 3（AMD64 & Intel EM64T），Red Hat Enterprise Linux AS 4（AMD64 & Intel EM64T），Red Hat Enterprise Linux 5 Advanced Platform（AMD/Intel 64），Red Hat Enterprise Linux ES 3（AMD64 & Intel EM64T），Red Hat Enterprise Linux ES 4（AMD64 & Intel EM64T），Red Hat Enterprise Linux 5（AMD/Intel 64）

P-9S43-7S71　 uCosminexus Service Platform　 07-60※

●適用OS：Red Hat Enterprise Linux AS 3（IPF），Red Hat Enterprise Linux AS 4（IPF），Red Hat Enterprise Linux 5 Advanced Platform（Intel Itanium）

P-9V43-7K71　 uCosminexus Application Server Enterprise　 07-60※

●適用OS：Solaris 9，Solaris 10

P-9D43-7K71　 uCosminexus Application Server Enterprise　 07-60※
P-9D43-7S71　 uCosminexus Service Platform　 07-60※

※印の製品については，サポート時期をご確認ください。
上記のプログラムプロダクトのほかにもこのマニュアルをご利用になれる場合があります。詳細は「リリースノート」でご確認ください。
本製品では日立トレース共通ライブラリをインストールします。

■ 輸出時の注意

本製品を輸出される場合には，外国為替および外国貿易法ならびに米国の輸出管理関連法規などの規制をご確認の上，必要な手続きをお取りください。
なお，ご不明な場合は，弊社担当営業にお問い合わせください。

■ 商標類

AIXは，米国における米国International Business Machines Corp.の登録商標です。
AMD, AMD Opteronおよびその組み合わせは，Advanced Micro Devices, Inc.の商標です。
HP-UXは，米国Hewlett-Packard Companyのオペレーティングシステムの名称です。
Intelは，Intel Corporationの会社名です。
Itaniumは，アメリカ合衆国および他の国におけるインテル コーポレーションまたはその子会社の登録商標です。
Java及びすべてのJava関連の商標及びロゴは，米国及びその他の国における米国Sun Microsystems,Inc.の商標または登録商標です。
JDKは，米国 Sun Microsystems, Inc. の米国およびその他の国における商標または登録商標です。
Linuxは，Linus Torvaldsの米国およびその他の国における登録商標あるいは商標です。
Microsoftは，米国およびその他の国における米国Microsoft Corp.の登録商標です。
Red Hatは，米国およびその他の国でRed Hat, Inc. の登録商標若しくは商標です。
SOAP（Simple Object Access Protocol）は，分散ネットワーク環境においてXMLベースの情報を交換するための通信プロトコルの名称です。
Solarisは，米国Sun Microsystems, Inc. の米国およびその他の国における商標または登録商標です。
Sun，Sun Microsystems，Javaは，米国Sun Microsystems, Inc. の米国およびその他の国における商標または登録商標です。
UNIXは，X/Open Company Limited が独占的にライセンスしている米国ならびに他の国における登録商標です。
Windowsは，米国およびその他の国における米国Microsoft Corp.の登録商標です。
Windows Serverは，米国Microsoft Corporationの米国及びその他の国における登録商標です。
Windows Vistaは，米国Microsoft Corporationの米国及びその他の国における登録商標です。
This product includes software developed by the Apache Software Foundation (http://www.apache.org/).
プログラムプロダクト「P-9D43-7K71，P-9D43-7S71」には，米国Sun Microsystems,Inc.が著作権を有している部分が含まれています。
プログラムプロダクト「P-9D43-7K71，P-9D43-7S71」には，UNIX System Laboratories,Inc.が著作権を有している部分が含まれています。

■ 発行

2006年 4月 (第1版) 3020-3-M48
2007年 12月 (第2版) 3020-3-M48-20

■ 著作権

All Rights Reserved. Copyright (C) 2006, 2007, Hitachi, Ltd.

変更内容

変更内容（3020-3-M48-20）uCosminexus Developer Professional 07-60，uCosminexus Application Server Enterprise 07-60，uCosminexus Service Architect 07-60，uCosminexus Service Platform 07-60

追加・変更内容
変更個所

次の前提OSを削除した。

Windows 2000 Server

Windows 2000 Professional

2.1.1

次の前提OSを追加した。

Windows Vista

2.1.1

次の前提OSを削除した。

AIX 5L V5.1

Solaris 8

2.2.1

次の前提OSを追加した。

HP-UX 11i V3（IPF）

Red Hat Enterprise Linux ES 3（AMD64 & Intel EM64T）

Red Hat Enterprise Linux ES 4（AMD64 & Intel EM64T）

Red Hat Enterprise Linux 5 Advanced Platform（x86）

Red Hat Enterprise Linux 5（x86）

Red Hat Enterprise Linux 5 Advanced Platform（AMD/Intel 64）

Red Hat Enterprise Linux 5（AMD/Intel 64）

Red Hat Enterprise Linux AS 3（IPF）

Red Hat Enterprise Linux AS 4（IPF）

Red Hat Enterprise Linux 5 Advanced Platform（Intel Itanium）

2.2.1

WS-Security v1.1対応に伴い，次の内容を変更した。

WSSUsernameToken.PasswordTypeクラスの列挙値の形式

WSSUsernameToken.PasswordTypeインタフェース（PasswordType要素の操作）のクラス定義，およびパスワード種別の形式

Faultコードの接頭辞，および名前空間

WS-Security 標準仕様

WS-Security 仕様のサポート範囲

Webサービスセキュリティ機能定義ファイルの項目
（BinarySecurityTokenConfig，KeyIdentifier，Password）

Webサービスセキュリティポリシー定義ファイルの項目
（TokenValidation）

表5-16，5.5，7.2.3，7.2.9，付録A，表A-1，表C-12，表C-24，表C-35，表C-62

メッセージを変更した。
KDCGF0001-E～KDCGF0008-E，KDCGW0001-E～　KDCGW0003-E，KDCGW9000-E
7.2.3，7.2.9

メッセージを追加した。
KDCGF0009-E，KDCGF0010-E
7.2.3

下位バージョンからの移行手順を追加した。
付録B

単なる誤字・脱字などはお断りなく訂正しました。

はじめに

このマニュアルは，Cosminexusが提供するCosminexus Web Services - SecurityのWebサービスセキュリティ機能について説明したものです。

Cosminexus Web Services - Securityは，Cosminexusを構成する次のプログラムプロダクトで提供されています。

P-2443-7F74 uCosminexus Developer Professional

P-2443-7T74 uCosminexus Service Architect

P-2443-7K74 uCosminexus Application Server Enterprise

P-2443-7S74 uCosminexus Service Platform

P-1M43-7K71 uCosminexus Application Server Enterprise

P-1M43-7S71 uCosminexus Service Platform

P-1J43-7K71 uCosminexus Application Server Enterprise

P-9S43-7K71 uCosminexus Application Server Enterprise

P-9S43-7S71 uCosminexus Service Platform

P-9V43-7K71 uCosminexus Application Server Enterprise

P-9D43-7K71 uCosminexus Application Server Enterprise

P-9D43-7S71 uCosminexus Service Platform

Cosminexus Web Services - SecurityのXML署名・暗号処理機能については，マニュアル「Cosminexus XML Security - Core　ユーザーズガイド」を参照してください。

対象読者

このマニュアルは，Cosminexusが提供するSOAPアプリケーション開発支援機能を利用して開発したSOAPアプリケーションに対して，Webサービスセキュリティ機能を使用する方を対象としています。また，このマニュアルをご利用になる方は，XML，SOAP，およびセキュリティに関する基本的な事項を理解されていることを前提としています。

マニュアルの構成

このマニュアルは，次に示す章と付録から構成されています。

第1章　Webサービスセキュリティの概要

Webサービスセキュリティとは何か，またCosminexusが提供するWebサービスセキュリティの機能について説明しています。

第2章　開発または実行に必要な製品

Webサービスセキュリティ機能を使用するために必要なOS，およびプログラムプロダクトについて説明しています。

第3章　Webサービスセキュリティ機能を使用する

Webサービスセキュリティ機能を使用する場合に必要な設定，および実装について説明しています。

第4章　Webサービスセキュリティ機能が提供するコマンド

Webサービスセキュリティ機能が提供するコマンドの形式やオプションなどを説明しています。

第5章　Webサービスセキュリティ機能が提供するAPI

Webサービスセキュリティ機能が提供するAPIの構文や引数など，APIの仕様について説明しています。

第6章　障害対策

障害が発生した場合の対処方法を説明しています。

第7章　メッセージ一覧

Webサービスセキュリティ機能が出力するメッセージの内容および対処方法などについて説明しています。

付録A　標準仕様への対応

Webサービスセキュリティ機能がサポートするWS-Security標準仕様，XML署名標準仕様，およびXML暗号標準仕様について説明しています。

付録B　下位バージョンからの移行手順

Webサービスセキュリティ機能の下位バージョンからの移行手順について説明しています。

付録C　定義ファイルの項目の詳細

Webサービスセキュリティ機能を使用する場合に必要な定義ファイルの要素名および指定回数を説明しています。また，各項目の役割についても説明しています。

付録D　用語解説

このマニュアルで使用している用語の意味を説明しています。

関連マニュアル

このマニュアルをご利用するに当たって，必要に応じて次に示すマニュアルを参照してください。

Cosminexus　機能解説（3020-3-M03）

Cosminexus　リファレンス　定義編（3020-3-M11）

Cosminexus　SOAPアプリケーション開発ガイド（3020-3-M47）

Cosminexus XML Security - Core　ユーザーズガイド（3020-3-M49）

Cosminexus XML Processor　ユーザーズガイド（3020-3-M44）

読書手順

このマニュアルをご利用になるときは，目的に応じて必要な章をお読みください。各章の利用目的の例を次に示しますので，ご利用の際の目安にしてください。

章タイトル
利用目的の例

第1章　Webサービスセキュリティの概要
Webサービスセキュリティとは何かを知りたい。
Webサービスセキュリティ機能とは何かを知りたい。

第2章　開発または実行に必要な製品
Webサービスセキュリティ機能を使用するために必要なOSとソフトウェアの種類およびバージョンを知りたい。

第3章　Webサービスセキュリティ機能を使用する
Webサービスセキュリティ機能を使用するための設定方法を知りたい。
Webサービスセキュリティ機能の実装方法を知りたい。

第4章　Webサービスセキュリティ機能が提供するコマンド
どのようなコマンドがあるのかを知りたい。
コマンドの使用方法を知りたい。

第5章　Webサービスセキュリティ機能が提供するAPI
どのようなAPIがあるのかを知りたい。
APIの使用方法を知りたい。

第6章　障害対策
障害が発生した場合の対処方法を知りたい。
トレースファイルの収集方法を知りたい。
アプリケーションログの収集方法を知りたい。

第7章　メッセージ一覧
メッセージが出力された場合の要因や対処方法を知りたい。

付録A　標準仕様への対応
WS-Security標準仕様のサポート範囲を知りたい。
XML署名標準仕様のサポート範囲を知りたい。
XML暗号標準仕様のサポート範囲を知りたい。

付録B　下位バージョンからの移行手順
下位バージョンからバージョンアップする場合の移行方法を知りたい。

付録C　定義ファイルの項目の詳細
定義ファイルで設定する項目の要素名，説明，または指定回数を知りたい。

付録D　用語解説
このマニュアルで使用されている用語の意味を知りたい。

図中で使用する記号

このマニュアルの図中で使用する記号を，次のように定義します。

このマニュアルで使用している記号

このマニュアルで使用している記号を次のように定義します。

記号 | 意味
< > | < >で囲まれた部分は状況に応じて変化する内容であることを示します。

このマニュアルでの表記

このマニュアルでは，製品名を次のように表記しています。

製品名
略称

IPF
Itanium(R) Processor Family

UNIX
AIX
AIX 5L V5.2
AIX 5L V5.3

HP-UX
HP-UX(IPF)
HP-UX 11i V2.0（IPF）
HP-UX 11i V3.0（IPF）

Linux
Linux(x86, AMD64 & Intel EM64T)
Red Hat Enterprise Linux AS 3（x86）
Red Hat Enterprise Linux AS 4（x86）
Red Hat Enterprise Linux 5 Advanced Platform（x86）
Red Hat Enterprise Linux ES 3（x86）
Red Hat Enterprise Linux ES 4（x86）
Red Hat Enterprise Linux 5（x86）
Red Hat Enterprise Linux AS 3（AMD64 & Intel EM64T）
Red Hat Enterprise Linux AS 4（AMD64 & Intel EM64T）
Red Hat Enterprise Linux 5 Advanced Platform（AMD/Intel 64）
Red Hat Enterprise Linux ES 3（AMD64 & Intel EM64T）
Red Hat Enterprise Linux ES 4（AMD64 & Intel EM64T）
Red Hat Enterprise Linux 5（AMD/Intel 64）

Linux(IPF)
Red Hat Enterprise Linux AS 3（IPF）
Red Hat Enterprise Linux AS 4（IPF）
Red Hat Enterprise Linux 5 Advanced Platform（Intel Itanium）

Solaris
Solaris 9
Solaris 10

Windows
Windows Server 2003
Microsoft(R) Windows Server(R) 2003，Standard Edition Operating System
Microsoft(R) Windows Server(R) 2003，Enterprise Edition Operating System

Windows Server 2003(x64)
Microsoft(R) Windows Server(R) 2003，Standard x64 Edition Operating System
Microsoft(R) Windows Server(R) 2003，Enterprise x64 Edition Operating System

Windows Server 2003 R2
Microsoft(R) Windows Server(R) 2003 Release 2，Standard Edition Operating System
Microsoft(R) Windows Server(R) 2003 Release 2，Enterprise Edition Operating System

Windows Server 2003 R2(x64)
Microsoft(R) Windows Server(R) 2003 Release 2，Standard x64 Edition Operating System
Microsoft(R) Windows Server(R) 2003 Release 2，Enterprise x64 Edition Operating System

Windows Vista
Microsoft(R) Windows Vista(R) Business

Microsoft(R) Windows Vista(R) Enterprise

Microsoft(R) Windows Vista(R) Ultimate

Windows XP
Microsoft(R) Windows(R) XP Professional Operating System

このマニュアルで使用する略語

このマニュアルでは，次に示す略語を使用しています。

略語 | 正式名称
API | Application Programming Interface
EJB | Enterprise Java Beans
J2SE | Java 2 Platform, Standard Edition
JAAS | Java Authentication and Authorization Service
JAR | Java Archive
OASIS | Organization for the Advancement of Structured Information Standards
OS | Operating System
RPC | Remote Procedure Call
URI | Uniform Resource Identifier
URL | Uniform Resource Locator
W3C | World Wide Web Consortium
WAR | Web Archive
WS | Web Service
XML | Extensible Markup Language

このマニュアルで使用する名前空間

このマニュアルでは，次に示す名前空間を使用しています。

プレフィックス | 名前空間
ds | http://www.w3.org/2000/09/xmldsig#
soapenv | http://www.w3.org/2001/12/soap-envelope
wsse | http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd
wsu | http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd

適用OSの違いによる機能相違点の表記

OSによって記述を書き分ける場合，次に示す表記を使用しています。

表記 | 意味
Windowsの場合 | Windows系のOSを使用している場合
その他のOSの場合 | Windows系以外のOS（HP-UX，AIX，Linux，またはSolaris）を使用している場合

Windowsの場合のフォルダとパスの表記

このマニュアルでは，Windows，HP-UX，AIX，LinuxおよびSolarisで共通の内容の場合，Windowsの「フォルダ」を「ディレクトリ」と表記しています。また，「¥」を「/」と表記しています。

Windowsの場合，「ディレクトリ」を「フォルダ」に，「/」を「¥」に置き換えてお読みください。

常用漢字以外の漢字の使用について

このマニュアルでは，常用漢字を使用することを基本としていますが，次に示す用語については，常用漢字以外の漢字を使用しています。

鍵（かぎ）　個所（かしょ）　必須（ひっす）　漏洩（ろうえい）

KB（キロバイト）などの単位表記について

1KB（キロバイト），1MB（メガバイト），1GB（ギガバイト），1TB（テラバイト）はそれぞれ1,024バイト，1,024²バイト，1,024³バイト，1,024⁴バイトです。

1.　Webサービスセキュリティの概要

この章では，Webサービスセキュリティとは何か，また，WebサービスセキュリティとSOAP，およびXMLセキュリティとの関係について説明します。また，Cosminexusが提供するWebサービスセキュリティ機能についても説明します。

＜この章の構成＞

1.1　Webサービスセキュリティとは

1.2　Cosminexusが提供するWebサービスセキュリティ機能

1.1　Webサービスセキュリティとは

Webサービスセキュリティとは，広義にはWebサービスを安全に実現するためのセキュリティ技術全般を指します。現在，代表的なWebサービスセキュリティは，XML署名およびXML暗号を利用したXMLセキュリティです。また，Webサービスの実現には，SOAPを使用するのが一般的です。この節では，WebサービスセキュリティとSOAP，およびXMLセキュリティとの関係について説明します。

＜この節の構成＞

1.1.1　WebサービスセキュリティとSOAPとの関係

1.1.2　WebサービスセキュリティとXMLセキュリティとの関係

1.1.1　WebサービスセキュリティとSOAPとの関係

Webサービスの多くは，SOAPメッセージを送受信することで実現します。SOAPメッセージはXML形式のデータです。そのため，ネットワークを経由して，そのままSOAPメッセージを送信した場合，データの内容を改ざんされたり，カード番号などの重要な情報を第三者に盗聴されたりしてしまうおそれがあります。このような改ざんや盗聴を防止するための技術がWebサービスセキュリティです。

Cosminexus Web Services - Securityは，Cosminexus Component ContainerのSOAP通信基盤機能に組み込んで，Webサービスセキュリティに対応したSOAPメッセージを送受信する場合に使用します。Cosminexus Web Services - Securityは，SOAP通信基盤機能の互換／標準モードのどちらでも使用できます。

また，Cosminexus Component ContainerのSOAPアプリケーション開発支援機能でWebサービスセキュリティ対応のSOAPアプリケーションを開発する場合にも，Cosminexus Web Services - Securityを使用します。SOAPアプリケーションの開発については，マニュアル「Cosminexus　SOAPアプリケーション開発ガイド」を参照してください。

1.1.2　WebサービスセキュリティとXMLセキュリティとの関係

W3Cが規定しているXML署名およびXML暗号の仕様をXMLセキュリティと呼びます。XMLセキュリティを利用すると，SOAPメッセージにXML署名を付与したり，SOAPメッセージを暗号化したりできます。代表的なWebサービスセキュリティは，OASISで規定されているもので，XMLセキュリティを利用した安全なWebサービスを実現します。

Cosminexus Web Services - Securityは，XML署名・暗号処理機能を利用したWebサービスセキュリティ機能を提供します。XML署名・暗号処理機能については，マニュアル「Cosminexus XML Security - Core　ユーザーズガイド」を参照してください。

1.2　Cosminexusが提供するWebサービスセキュリティ機能

Cosminexusでは，Cosminexus Web Services - Securityを利用してWebサービスセキュリティを実現します。Cosminexus Web Services - Securityが提供する機能のうち，SOAPメッセージの完全性や秘匿性などのセキュリティを提供する機能をWebサービスセキュリティ機能と呼びます。

＜この節の構成＞

1.2.1　SOAPメッセージの完全性を保証する

1.2.2　SOAPメッセージの秘匿性を保証する

1.2.3　SOAPメッセージの認証をサポート

1.2.1　SOAPメッセージの完全性を保証する

Webサービスセキュリティ機能は，SOAPメッセージの完全性を保証します。SOAPメッセージが送受信中に改ざんされないよう，SOAPメッセージの完全性を保証するための方法として，署名を利用する方法があります。

Webサービスセキュリティ機能を使用すると，SOAPメッセージに署名を付与できます。SOAPメッセージに署名が付与されている場合，SOAPメッセージを受信したときに署名を検証することによって，SOAPメッセージが送受信中に改ざんされていないかどうかを調べられます。また，SOAPメッセージに証明書が付与されている場合は，Webサービスセキュリティ機能で証明書も検証できます。

1.2.2　SOAPメッセージの秘匿性を保証する

Webサービスセキュリティ機能は，SOAPメッセージの秘匿性を保証します。SOAPメッセージが送受信中に第三者によって盗聴されないよう，SOAPメッセージの秘匿性を保証するための方法として，SOAPメッセージを暗号化する方法があります。

Webサービスセキュリティ機能を使用すると，必要な部分だけを指定してSOAPメッセージを暗号化することができます。Webサービスセキュリティ機能では，暗号化にXML暗号を使用します。暗号化することによって，SOAPメッセージの送受信中に第三者にメッセージの内容を盗聴されるおそれがなくなります。

1.2.3　SOAPメッセージの認証をサポート

Webサービスセキュリティ機能は，SOAPメッセージの認証および証明書の検証をサポートしています。SOAPメッセージの送信者を特定する必要がある場合は，ユーザー名やパスワードをSOAPメッセージに含めるように設定できます。

2.　開発または実行に必要な製品

この章では，Webサービスセキュリティ機能の前提OSおよび前提プログラムを，開発時と実行時に分けて説明します。また，開発時と実行時のプログラム構成例をそれぞれ紹介します。

＜この章の構成＞

2.1　開発に必要な製品

2.2　実行に必要な製品

2.1　開発に必要な製品

この節では，Cosminexus Web Services - Securityが提供するWebサービスセキュリティ機能をSOAPアプリケーション開発支援機能に組み込んでSOAPアプリケーションを開発する場合の，前提OSおよび前提プログラムについて説明します。また，開発時のプログラム構成例についても説明します。

＜この節の構成＞

2.1.1　開発時の前提OS

2.1.2　開発時の前提プログラム

2.1.3　開発時のプログラム構成例

2.1.1　開発時の前提OS

Webサービスセキュリティ機能をSOAPアプリケーション開発支援機能に組み込んで開発する場合の前提OSは，次のどれかです。

Windows Vista

Windows XP

Windows Server 2003

Windows Server 2003 R2

2.1.2　開発時の前提プログラム

Webサービスセキュリティ機能をSOAPアプリケーション開発支援機能に組み込んでSOAPアプリケーションを開発する場合に，必要となる前提プログラムを次の表に示します。前提プログラムのバージョンについては「リリースノート」でご確認ください。

表2-1　前提プログラム一覧（開発時）

分類 | プログラム名
J2EEサーバ，SOAPアプリケーション開発支援機能 | Cosminexus Component Container
JavaTM2SDK | Cosminexus Developer's Kit for JavaTM
XMLプロセッサ | Cosminexus XML Processor

2.1.3　開発時のプログラム構成例

Webサービスセキュリティ機能をSOAPアプリケーション開発支援機能に組み込んでSOAPアプリケーションを開発する場合のプログラム構成例を次に示します。

図2-1　Webサービスセキュリティ機能を組み込む場合のプログラム構成例

2.2　実行に必要な製品

この節では，Cosminexus Web Services - Securityが提供するWebサービスセキュリティ機能を組み込んだSOAPアプリケーションを実行する場合の，前提OSおよび前提プログラムについて説明します。また，実行時のプログラム構成例についても説明します。

＜この節の構成＞

2.2.1　実行時の前提OS

2.2.2　実行時の前提プログラム

2.2.3　実行時のプログラム構成例

2.2.1　実行時の前提OS

Webサービスセキュリティ機能を組み込んだSOAPアプリケーションを実行する場合の前提OSは，次のどれかです。

Windows Server 2003

Windows Server 2003（x64）

Windows Server 2003 R2

Windows Server 2003 R2（x64）

Red Hat Enterprise Linux AS 3（x86）

Red Hat Enterprise Linux AS 4（x86）

Red Hat Enterprise Linux 5 Advanced Platform（x86）※1

Red Hat Enterprise Linux ES 3（x86）

Red Hat Enterprise Linux ES 4（x86）

Red Hat Enterprise Linux 5（x86）※1

Red Hat Enterprise Linux AS 3（AMD64 & Intel EM64T）

Red Hat Enterprise Linux AS 4（AMD64 & Intel EM64T）

Red Hat Enterprise Linux 5 Advanced Platform（AMD/Intel 64）※1

Red Hat Enterprise Linux ES 3（AMD64 & Intel EM64T）

Red Hat Enterprise Linux ES 4（AMD64 & Intel EM64T）

Red Hat Enterprise Linux 5（AMD/Intel 64）※1

Red Hat Enterprise Linux AS 3（IPF）

Red Hat Enterprise Linux AS 4（IPF）

Red Hat Enterprise Linux 5 Advanced Platform（Intel Itanium）※2

Solaris 9

Solaris 10

AIX 5L V5.2

AIX 5L V5.3

HP-UX 11i V2（IPF）※2

HP-UX 11i V3（IPF）※2

注※1　uCosminexus Service Platformだけに該当します。

注※2　uCosminexus Service Platformには該当しません。

2.2.2　実行時の前提プログラム

Webサービスセキュリティ機能を組み込んだSOAPアプリケーションを実行する場合に必要となる前提プログラムを次の表に示します。前提プログラムのバージョンについては「リリースノート」でご確認ください。

表2-2　前提プログラム一覧（実行時）

分類
プログラム名

Webサーバ

Windowsの場合：

Cosminexus Component Containerが動作するWebサーバ※

その他のOSの場合：

Hitachi Web Server

J2EEサーバ，SOAP通信基盤（SOAPクライアントライブラリ，SOAPエンジン）
Cosminexus Component Container

JavaTM2SDK
Cosminexus Developer's Kit for JavaTM

XMLプロセッサ
Cosminexus XML Processor

注※

Cosminexus Component Containerが動作するWebサーバについての詳細は，マニュアル「Cosminexus　機能解説」を参照してください。

2.2.3　実行時のプログラム構成例

Webサービスセキュリティ機能をSOAPアプリケーション開発支援機能に組み込んで，SOAPアプリケーションを実行する場合の，クライアント側とサーバ側のプログラム構成例を次に示します。

図2-2　Webサービスセキュリティ機能を組み込んだSOAPアプリケーションを実行する場合のプログラム構成例

3.　Webサービスセキュリティ機能を使用する

この章では，開発したSOAPアプリケーションに対して，Webサービスセキュリティ機能を使用する手順について説明します。

＜この章の構成＞

3.1　定義ファイルの設定

3.2　署名付与／検証機能を設定する

3.3　暗号化／復号化機能を設定する

3.4　認証機能を設定する

3.5　メッセージに有効期限を設定する

3.6　定義ファイルの構文をチェックする

3.7　定義ファイルに関する注意事項

3.8　実行環境に合わせて設定を変更する

3.9　Webサービスセキュリティ機能の実装手順

3.1　定義ファイルの設定

Webサービスセキュリティ機能を使用するためには，次に示す二つの定義ファイルに必要な項目を設定する必要があります。

Webサービスセキュリティ機能定義ファイル（security-config.xml）

Webサービスセキュリティポリシー定義ファイル（policy-config.xml）

これらの定義ファイルは，SOAPアプリケーションを利用するクライアント，およびサーバの両方に配置する必要があります。

次に，各定義ファイルの概要を説明します。

＜この節の構成＞

3.1.1　Webサービスセキュリティ機能定義ファイル

3.1.2　Webサービスセキュリティポリシー定義ファイル

3.1.1　Webサービスセキュリティ機能定義ファイル

Webサービスセキュリティ機能定義ファイルは，Webサービスセキュリティ機能の動作を定義するためのファイルです。例えば，SOAPメッセージに署名を付与する場合，署名に用いる証明書を指定します。または，SOAPメッセージを暗号化する場合は，どの暗号化アルゴリズムを用いるのか，などを定義します。

Webサービスセキュリティ機能定義ファイルは，次の要素を持っています。

BindingConfig
Webサービスセキュリティの各機能で共通して使用する情報を設定します。

RequestSenderConfig
リクエストメッセージ送信時のWebサービスセキュリティ機能を設定します。

ResponseSenderConfig
レスポンスメッセージ送信時のWebサービスセキュリティ機能を設定します。

RequestReceiverConfig
リクエストメッセージ受信時のWebサービスセキュリティ機能を設定します。

ResponseReceiverConfig
レスポンスメッセージ受信時のWebサービスセキュリティ機能を設定します。

クライアントとサーバでは，必要な要素が異なります。

Webサービスセキュリティ機能を使用するために，クライアントおよびサーバで設定する必要がある要素を次の表に示します。

表3-1　設定が必要な要素（Webサービスセキュリティ機能定義ファイル）

要素名 | クライアント | サーバ
BindingConfig | ○ | ○
RequestSenderConfig | ○ | ×
ResponseSenderConfig | × | ○
RequestReceiverConfig | × | ○
ResponseReceiverConfig | ○ | ×

（凡例）

○：必要

×：不要

Webサービスセキュリティ機能定義ファイルの項目については，「付録C.1　Webサービスセキュリティ機能定義ファイルの項目」を参照してください。

3.1.2　Webサービスセキュリティポリシー定義ファイル

Webサービスセキュリティポリシー定義ファイルは，受信したSOAPメッセージを検証するポリシーを定義するためのファイルです。Webサービスセキュリティ機能では，このポリシー定義ファイルを基に，SOAPメッセージが受信側の意図したものかどうかを検証します。

Webサービスセキュリティポリシー定義ファイルは，次の要素を持っています。

GlobalConfig
Webサービスセキュリティ機能のポリシー定義で共通して使用するポリシーを設定します

RequestReceiverConfig
リクエストメッセージ受信時のポリシーを設定します。

ResponseReceiverConfig
レスポンスメッセージ受信時のポリシーを設定します。

クライアントとサーバでは，必要な要素が異なります。

Webサービスセキュリティ機能を使用するために，クライアントおよびサーバで設定する必要がある要素を次の表に示します。

表3-2　設定が必要な要素（Webサービスセキュリティポリシー定義ファイル）

要素名 | クライアント | サーバ
GlobalConfig | ○ | ○
RequestReceiverConfig | × | ○
ResponseReceiverConfig | ○ | ×

（凡例）

○：必要

×：不要

Webサービスセキュリティポリシー定義ファイルの項目については，「付録C.2　Webサービスセキュリティポリシー定義ファイルの項目」を参照してください。

3.2　署名付与／検証機能を設定する

署名付与／検証機能は，SOAP通信基盤で送信するSOAPメッセージに対して， XML署名を付与したり，受信するSOAPメッセージに付与されているXML署名を検証したりする機能です。署名付与機能は，SOAPメッセージの送信時に，署名検証機能はSOAPメッセージの受信時に使用します。

次に，署名付与／検証機能を使用した際のプログラムの構成図を示します。矢印およびその番号は，送受信するデータの処理の流れを示しています。

図3-1　Webサービスセキュリティ機能使用時のプログラム構成（署名付与／検証）

署名付与／検証機能を使用する際の，Webサービスセキュリティ機能定義ファイルの設定項目を次に示します。

＜送信側＞
SecurityConfig
├─ BindingConfig
└┬ RequestSenderConfig/ResponseSenderConfig
　└┬ SenderPortConfig
　　└┬ RoleConfig
　　　├─ BinarySecurityTokenConfig
　　　└─ SignatureConfig
＜受信側＞
SecurityConfig
├─ BindingConfig
└┬ RequestReceiverConfig/ResponseReceiverConfig
　└┬ ReceiverPortConfig
　　└─ VerificationConfig

署名付与／検証機能を使用する際の，Webサービスセキュリティポリシー定義ファイルの設定項目を次に示します。

PolicyConfig
└┬ RequestReceiverConfig/ResponseReceiverConfig
　└┬ ReceiverPortConfig
　　├┬ SecurityTokenConfig
　　│└─ BinarySecurityTokenConfig
　　└─ VerificationConfig

設定する要素の詳細については，「付録C　定義ファイルの項目の詳細」を参照してください。

Windowsの場合，定義ファイルのサンプルは次のディレクトリに格納されていますので，これらを参考に定義ファイルを作成してください。なお，作成した定義ファイルの格納場所については，「3.9　Webサービスセキュリティ機能の実装手順」を参照してください。

＜Cosminexusのインストールディレクトリ＞/wss/samples/ の下

signature/message/client/WEB-INF/classes
signature/message/service/WEB-INF/classes
signature/rpc/client/WEB-INF/classes
signature/rpc/service/WEB-INF/classes

また，Windowsの場合，コーディングのサンプルは，次のディレクトリに格納されていますので，参考にしてください。

＜Cosminexusのインストールディレクトリ＞/wss/samples/ の下

signature/KeyStore
signature/message/client/WEB-INF/classes/messagesampleclient
signature/message/service/WEB-INF/classes/messagesampleservice
signature/rpc/client/WEB-INF/classes/localhost
signature/rpc/service/WEB-INF/classes/localhost

署名付与の設定情報について

署名付与に必要な情報は，Webサービスセキュリティ機能定義ファイルに指定された設定情報から取得します。

署名に用いる秘密鍵は，環境設定ファイルで指定したキーストアファイルを使用します。環境設定ファイルの詳細については，「3.8.2　環境設定ファイルの設定項目」を参照してください。

署名に関する仕様のサポート範囲については，「付録A.2　XML署名標準仕様のサポート範囲」を参照してください。

署名検証の設定情報について

署名検証に必要な情報は，Webサービスセキュリティ機能定義ファイル，およびWebサービスセキュリティポリシー定義ファイルに指定された設定情報から取得します。

証明書検証に用いる証明書は，環境設定ファイルで指定した証明書ファイルを使用します。環境設定ファイルの詳細については，「3.8.2　環境設定ファイルの設定項目」を参照してください。

注意事項

署名付与／検証で使用するキーストアファイルは，読み取り権限を限定するなど，第三者に読み取られないようにご注意ください。

＜この節の構成＞

3.2.1　署名を付与する個所をパート名で指定する

3.2.2　署名を付与する個所をID属性で指定する

3.2.1　署名を付与する個所をパート名で指定する

署名を付与する個所をパート名という名称で指定します。Cosminexus Web Services - Securityで，署名を付与する際に指定できるパート名は，"Body"だけです。"Body"を指定した場合，SOAPメッセージのBody要素そのものを意味します。

署名個所をパート名で指定する際の，Webサービスセキュリティ機能定義ファイルの設定項目を次に示します。

SecurityConfig
└┬ RequestSenderConfig/ResponseSenderConfig
　└┬ SenderPortConfig
　　└┬ RoleConfig
　　　└┬ SignatureConfig
　　　　└─ SignatureTarget

署名個所をパート名で指定する際の，Webサービスセキュリティポリシー定義ファイルの設定項目を次に示します。

PolicyConfig
└┬ RequestReceiverConfig/ResponseReceiverConfig
　└┬ ReceiverPortConfig
　　└┬ VerificationConfig
　　　└─ SignatureTarget

設定する要素の詳細については，「付録C　定義ファイルの項目の詳細」を参照してください。

3.2.2　署名を付与する個所をID属性で指定する

署名を付与する個所を，ID属性で指定し，そのID値が含まれる要素に対して署名します。なお，受信側でID属性のポリシーについては検証できません。

署名個所をIDで指定する際の，Webサービスセキュリティ機能定義ファイルの設定項目を次に示します。

SecurityConfig
└┬ RequestSenderConfig/ResponseSenderConfig
　└┬ SenderPortConfig
　　└┬ RoleConfig
　　　└┬ SignatureConfig
　　　　└─ SignatureTarget

設定する要素の詳細については，「付録C　定義ファイルの項目の詳細」を参照してください。

3.3　暗号化／復号化機能を設定する

暗号化／復号化機能は，SOAP通信基盤で送受信するSOAPメッセージを，暗号化／復号化する機能です。暗号化機能はSOAPメッセージの送信時に，復号化機能はSOAPメッセージの受信時に使用します。

次に，暗号化／復号化機能を使用した際のプログラムの構成図を示します。矢印およびその番号は，送受信するデータの処理の流れを示しています。

図3-2　Webサービスセキュリティ機能使用時のプログラム構成（暗号化／復号化）

暗号化／復号化機能を使用する際の，Webサービスセキュリティ機能定義ファイルの設定項目を次に示します。

＜送信側＞
SecurityConfig
├─ BindingConfig
└┬ RequestSenderConfig/ResponseSenderConfig
　└┬ SenderPortConfig
　　└┬ RoleConfig
　　　└─ EncryptionConfig
＜受信側＞
SecurityConfig
├─ BindingConfig
└┬ RequestReceiverConfig/ResponseReceiverConfig
　└┬ ReceiverPortConfig
　　└─ DecryptionConfig

暗号化／復号化機能を使用する際の，Webサービスセキュリティポリシー定義ファイルの設定項目を次に示します。

PolicyConfig
└┬ RequestReceiverConfig/ResponseReceiverConfig
　└┬ ReceiverPortConfig
　　└─ DecryptionPolicyConfig

設定する要素の詳細については，「付録C　定義ファイルの項目の詳細」を参照してください。

Windowsの場合，定義ファイルのサンプルは，次のディレクトリに格納されていますので，これらを参考に定義ファイルを作成してください。なお，作成した定義ファイルの格納場所については，「3.9　Webサービスセキュリティ機能の実装手順」を参照してください。

＜Cosminexusのインストールディレクトリ＞/wss/samples/ の下

encryption/message/client/WEB-INF/classes
encryption/message/service/WEB-INF/classes
encryption/rpc/client/WEB-INF/classes
encryption/rpc/service/WEB-INF/classes

また，Windowsの場合，コーディングのサンプルは，次のディレクトリに格納されていますので，参考にしてください。

＜Cosminexusのインストールディレクトリ＞/wss/samples/ の下

encryption/SecretKey
encryption/message/client/WEB-INF/classes/messagesampleclient
encryption/message/service/WEB-INF/classes/messagesampleservice
encryption/rpc/client/WEB-INF/classes/localhost
encryption/rpc/service/WEB-INF/classes/localhost

暗号化の設定情報について

暗号化に必要な情報は，Webサービスセキュリティ機能定義ファイルに指定された設定情報から取得します。

暗号化に関する仕様のサポート範囲については，「付録A.3　XML暗号標準仕様のサポート範囲」を参照してください。

復号化の設定情報について

復号化に必要な情報は，Webサービスセキュリティ機能定義ファイル，およびWebサービスセキュリティポリシー定義ファイル指定された設定情報から取得します。

暗号化／復号化に用いる共通鍵は，環境設定ファイルで指定した共通鍵ファイルを使用します。環境設定ファイルの詳細については，「3.8.2　環境設定ファイルの設定項目」を参照してください。

注意事項

暗号化／復号化で使用する鍵ファイルは，読み取り権限を限定するなど，第三者に読み取られないようにご注意ください。

＜この節の構成＞

3.3.1　暗号化する個所をパート名で指定する

3.3.2　暗号化する個所をID属性で指定する

3.3.1　暗号化する個所をパート名で指定する

暗号化する個所をパート名という名称で指定します。Cosminexus Web Services - Securityで，暗号化する際に指定できるパート名は，"BodyContent"だけです。"BodyContent"を指定した場合，SOAPメッセージのBody要素に含まれる子要素，テキストなどをすべて指定することを意味します。

暗号個所をパート名で指定する際の，Webサービスセキュリティ機能定義ファイルの設定項目を次に示します。

SecurityConfig
└┬ RequestSenderConfig/ResponseSenderConfig
　└┬ SenderPortConfig
　　└┬ RoleConfig
　　　└┬ EncryptionConfig
　　　　└┬ ContentsEncryption
　　　　　└─ EncryptionTarget

暗号個所をパート名で指定する際の，Webサービスセキュリティポリシー定義ファイルの設定項目を次に示します。

PolicyConfig
└┬ RequestReceiverConfig/ResponseReceiverConfig
　└┬ ReceiverPortConfig
　　└┬ DecryptionPolicyConfig
　　　└─ DecryptionTarget

設定する要素の詳細については，「付録C　定義ファイルの項目の詳細」を参照してください。

3.3.2　暗号化する個所をID属性で指定する

暗号化する個所を，ID属性で指定し，そのID値が含まれる要素に対して暗号化します。なお，受信側でID属性のポリシーについては検証できません。

暗号個所をIDで指定する際の，Webサービスセキュリティ機能定義ファイルの設定項目を次に示します。

SecurityConfig
└┬ RequestSenderConfig/ResponseSenderConfig
　└┬ SenderPortConfig
　　└┬ RoleConfig
　　　└┬ EncryptionConfig
　　　　└┬ ContentsEncryption
　　　　　└─ EncryptionTarget

設定する要素の詳細については，「付録C　定義ファイルの項目の詳細」を参照してください。

3.4　認証機能を設定する

セキュリティトークンを通信先に受け渡すことで，認証を実現します。

Cosminexus Web Services - Securityでは，JAASを使用した認証方式をサポートします。

認証機能を使用する際の，Webサービスセキュリティ機能定義ファイルの設定項目を次に示します。

＜送信側＞
SecurityConfig
├─ BindingConfig
└┬ RequestSenderConfig/ResponseSenderConfig
　└┬ SenderPortConfig
　　└┬ RoleConfig
　　　└─ UsernameTokenConfig
＜受信側＞
SecurityConfig
├─ BindingConfig
└┬ RequestReceiverConfig/ResponseReceiverConfig
　└┬ ReceiverPortConfig
　　└─ AuthenticationConfig

認証機能を使用する際の，Webサービスセキュリティポリシー定義ファイルの設定項目を次に示します。

PolicyConfig
├─ GlobalConfig
└┬ RequestReceiverConfig/ResponseReceiverConfig
　└┬ ReceiverPortConfig
　　└┬ SecurityTokenConfig
　　　└─ UsernameTokenConfig

設定する要素の詳細については，「付録C　定義ファイルの項目の詳細」を参照してください。

Windowsの場合，定義ファイルのサンプルは，次のディレクトリに格納されていますので，これらを参考に定義ファイルを作成してください。なお，作成した定義ファイルの格納場所については，「3.9　Webサービスセキュリティ機能の実装手順」を参照してください。

＜Cosminexusのインストールディレクトリ＞/wss/samples/ の下

usernameToken/rpc/client/WEB-INF/classes
usernameToken/rpc/service/WEB-INF/classes

また，Windowsの場合，コーディングのサンプルは，次のディレクトリに格納されていますので，参考にしてください。

＜Cosminexusのインストールディレクトリ＞/wss/samples/ の下

usernameToken/rpc/Auth
usernameToken/rpc/client/WEB-INF/classes/localhost
usernameToken/rpc/service/WEB-INF/classes/localhost

認証の設定情報について

認証に必要な情報は，Webサービスセキュリティ機能定義ファイルに指定された設定情報から取得します。ただし，一部の情報はWebサービスセキュリティ機能が提供するAPIを使用して指定できます。APIについては，「5.　Webサービスセキュリティ機能が提供するAPI」を参照してください。

認証のSOAPメッセージ形式について

Webサービスセキュリティ機能が生成するSOAPメッセージ内のUsernameToken要素のNonce要素とCreated要素は，パスワードのタイプがダイジェスト形式の場合に付与されます。パスワードタイプがテキスト形式の場合はこれらの要素は付与されません。

パスワードのタイプがダイジェスト形式のSOAPメッセージでダイジェストを求めたい場合は，コーディングのサンプルのソースコード（UsernameLoginModule.java）のloginメソッドの実装を参考にしてください。

認証に関するポリシーチェックについて

Webサービスセキュリティポリシー定義ファイルに指定された設定情報を基に，受信したSOAPメッセージがポリシーに従っているかどうかをチェックします。

注意事項

認証で，パスワードの記述されたファイルなどを使用する場合は，読み取り権限を限定するなど，第三者に読み取られないようにご注意ください。

3.5　メッセージに有効期限を設定する

Cosminexus Web Services - Securityでは，SOAPメッセージの送信時にタイムスタンプや有効期限を設定したり，受信側で古いメッセージや有効期限を経過したメッセージの受信を拒否したりする機能を提供します。

メッセージに有効期限を設定する際の，Webサービスセキュリティ機能定義ファイルの設定項目を次に示します。

SecurityConfig
└┬ RequestSenderConfig/ResponseSenderConfig
　└┬ SenderPortConfig
　　└┬ RoleConfig
　　　└┬ TimestampConfig
　　　　└─ Expires

メッセージに付与されているタイムスタンプや有効期限を検証する際の，Webサービスセキュリティポリシー定義ファイルの設定項目を次に示します。

PolicyConfig
├─ GlobalConfig
└┬ RequestReceiverConfig/ResponseReceiverConfig
　└┬ ReceiverPortConfig
　　└┬ TimestampConfig
　　　└┬ Created
　　　　└ Expires

設定する要素の詳細については，「付録C　定義ファイルの項目の詳細」を参照してください。

Windowsの場合，定義ファイルのサンプルは，次のディレクトリに格納されていますので，これらを参考に定義ファイルを作成してください。なお，作成した定義ファイルの格納場所については，「3.9　Webサービスセキュリティ機能の実装手順」を参照してください。

＜Cosminexusのインストールディレクトリ＞/wss/samples/ の下

timeStamp/rpc/client/WEB-INF/classes
timeStamp/rpc/service/WEB-INF/classes

また，Windowsの場合，コーディングのサンプルは，次のディレクトリに格納されていますので，参考にしてください。

＜Cosminexusのインストールディレクトリ＞/wss/samples/ の下

timeStamp/rpc/client/WEB-INF/classes/localhost
timeStamp/rpc/service/WEB-INF/classes/localhost

3.6　定義ファイルの構文をチェックする

Webサービスセキュリティ機能定義ファイル，およびWebサービスセキュリティポリシー定義ファイルを設定したあと，定義ファイルの記述内容が正しいかどうかをチェックするために，構文チェック用のコマンドを使用します。

構文チェック用のコマンドの使い方については，「4.2　定義ファイル構文チェックコマンド（CWSSConfCheck）」を参照してください。

注意事項

定義ファイル構文チェックコマンドは，Windowsで使用してください。その他のOSでは使用できません。

3.7　定義ファイルに関する注意事項

Webサービスセキュリティ機能定義ファイル，およびWebサービスセキュリティポリシー定義ファイルを設定する上での注意事項について説明します。

＜この節の構成＞

(1)　 Timestamp要素を使用する場合

(2)　 Webサービスセキュリティ機能定義ファイルの運用について

(3)　 Webサービスセキュリティポリシー定義ファイルの運用について

(4)　セキュリティ機能を組み合わせて使用する場合

(1)　 Timestamp要素を使用する場合

Webサービスセキュリティ機能定義ファイルのCreated要素，Expires要素を共に省略した場合は，Timestamp要素自体が作成されません。

SOAPメッセージを送信するマシンと受信するマシンに設定されている時刻は，一致していないおそれがあります。Created要素に設定されている値を基にそのメッセージを古いとみなしたり，Expires要素に設定されている値を基にそのメッセージを有効期限切れとみなしたりする際，許容範囲を設定できます。
マシン間の設定時刻の差に関する許容範囲を設定する際の，Webサービスセキュリティポリシー定義ファイルの設定項目を次に示します。

PolicyConfig
└┬ GlobalConfig
　├─ Max-Clock-Skew
　└─ Fresh-Time-Limit

詳細については，「付録C.2　 Webサービスセキュリティポリシー定義ファイルの項目」を参照してください。

(2)　 Webサービスセキュリティ機能定義ファイルの運用について

Webサービスセキュリティ機能定義ファイルは，第三者によって改ざんされないようにアクセス権の設定をしてください。

(3)　 Webサービスセキュリティポリシー定義ファイルの運用について

Webサービスセキュリティポリシー定義ファイルは，第三者によって改ざんされないようにアクセス権の設定をしてください。

Webサービスセキュリティポリシー定義ファイルをSOAPサービスの利用者に配布する場合，ファイルが改ざんされないよう対策してください。

Webサービスセキュリティポリシー定義ファイルは，安全な方法でSOAPサービスの利用者に配布してください。

SOAPサービスの利用者は，Webサービスセキュリティポリシー定義ファイルの内容に従って，Webサービスセキュリティ機能定義ファイルを作成する必要があります。

(4)　セキュリティ機能を組み合わせて使用する場合

署名付与／検証機能，暗号化／復号化機能，認証機能，およびメッセージに有効期限を設定する機能は，組み合わせて使用できます。複数の機能を組み合わせて使用する場合は，Webサービスセキュリティ機能定義ファイルのRoleConfig要素内に，それぞれの設定項目を併記してください。

次に，設定の順番についての注意事項を示します。

送信側のWebサービスセキュリティ機能定義ファイルに設定した機能は，設定した順番で処理されます。各機能に対応するセキュリティ要素がSOAPメッセージのセキュリティヘッダに出現しますが，その順番は，Webサービスセキュリティ機能定義ファイルで設定した順番とは逆順になります。

Webサービスセキュリティ機能が提供するAPIを使用してUsernameTokenを付与した場合，対応するセキュリティ要素はSOAPメッセージのセキュリティヘッダのいちばん下に出現します。

なお，受信側のWebサービスセキュリティ機能定義ファイルと，Webサービスセキュリティポリシー定義ファイルに設定する順番は，特に意識する必要はありません。

3.8　実行環境に合わせて設定を変更する

Webサービスセキュリティ機能定義ファイルおよびWebサービスセキュリティポリシー定義ファイルに記述する内容で，実行環境に依存する部分は，環境設定ファイルで設定します。

環境設定ファイルは，次のディレクトリに格納されています。ファイル名は，「cwsscfg.properties」で固定です。

＜Cosminexusのインストールディレクトリ＞/wss/conf の下

次に，環境設定ファイルの記述規則と設定項目について説明します。

＜この節の構成＞

3.8.1　環境設定ファイルの記述規則

3.8.2　環境設定ファイルの設定項目

3.8.1　環境設定ファイルの記述規則

環境設定ファイルは，JavaTM2 Platform Standard Editionのプロパティ形式に従い，「キー名称=値」の形式で記述します。次に，環境設定ファイルの記述規則について示します。

１行の終わりは必ず改行されていなければなりません。

「#」で始まる行はコメントとみなされます。

値が存在しない行を設定した場合，空文字として処理されます。

キー名称と=の間，および=と値の間にスペースを入れてはいけません。

値に2バイト文字を使用する場合は，Cosminexusで提供されているJavaTM2SDKのnative2asciiコマンドで環境設定ファイルを変換してから使用しなければなりません。

設定できるキー名称以外のキー名称を設定した場合，その行は無視されます。

キー名称の大文字と小文字は区別されます。

値には半角スペースも設定できます。

例

cwss.binding.KeyLocator.KeyStoreDir=d:/Program Files/HITACHI/Cosminexus/wss/KeyStore

3.8.2　環境設定ファイルの設定項目

環境設定ファイルで設定できるキーおよび値を，次の表に示します。

表3-3　環境設定ファイルの設定項目

キー名称
指定値
説明
デフォルト値
（値省略時または範囲外）

cwss.binding.KeyLocator.KeyStoreDir
任意のディレクトリ名
署名付与／検証で使用するキーストアファイルを格納するディレクトリ名を指定します。
＜Cosminexusのインストールディレクトリ＞/wss/KeyStore

cwss.binding.KeyLocator.CertificateDir
任意のディレクトリ名
証明書検証で使用する証明書ファイルを格納するディレクトリ名を指定します。
＜Cosminexusのインストールディレクトリ＞/wss/Cert

cwss.policy.usernameToken.maxNonceCount
1～100,000
受信済みNonce値を保存する最大個数を指定します。
100,000

cwss.policy.usernameToken.maxNonceAge
1,000～86,400,000（最大24時間）
受信済みNonce値の最大保存時間を現在時刻からの相対ミリ秒で指定します。
300,000（5分）

cwss.binding.KeyLocator.SecretKeyDir
任意のディレクトリ名
暗号化／復号化で使用する共通鍵ファイルを格納するディレクトリ名を指定します。
＜Cosminexusのインストールディレクトリ＞/wss/SecretKey

cwss.engine.receive.unsecured.message
true
またはfalse
受信側でWebサービスセキュリティポリシー定義ファイルの設定をしている場合，受信メッセージにSOAPメッセージのSecurity要素を含まなかったときの動作を指定します。※
false

注※

受信側でWebサービスセキュリティポリシー定義ファイルの設定をしている場合で，falseを設定した場合，エラーメッセージKDCGF0003-Eが出力されます。trueを設定した場合，Webサービスセキュリティ機能定義ファイルおよびWebサービスセキュリティポリシー定義ファイルの設定内容に関係なく，エラーにはなりません。

3.9　Webサービスセキュリティ機能の実装手順

ここでは，実行環境に必要な定義ファイルやユーザー作成のプログラムを実装し，開発したSOAPアプリケーションでWebサービスセキュリティ機能を使用する手順について説明します。

次に，SOAPアプリケーション開発支援機能を利用したSOAPアプリケーションの開発の流れを示します。

（a）サービスの設計

（b）WSDLの作成

（c）サーバスケルトンの作成

（d）サーバ実装

（e）WARファイルの作成

（f）サービスの開始

（g）クライアントスタブの生成

（h）クライアントの実装

SOAPアプリケーション開発の詳細については，マニュアル「Cosminexus　SOAPアプリケーション開発ガイド」を参照してください。

また，07-60以降のバージョンを使用してWebサービスセキュリティ機能を使用する場合は，移行が必要です。移行の詳細については，「付録B 下位バージョンからの移行手順」を参照してください。

前に示したSOAPアプリケーション開発の流れ（以降，「開発ステップ」と呼びます）を基本とし，Webサービスセキュリティ機能を使用する上で必要なステップを説明します。

＜この節の構成＞

3.9.1　サーバ側の実装手順

3.9.2　クライアント側がWebアプリケーションの場合の実装手順

3.9.3　クライアント側がコマンドラインJavaアプリケーションの場合の実装手順

3.9.4　JAASログインモジュールの実装時の注意

3.9.1　サーバ側の実装手順

Webサービスセキュリティ機能をサーバ側に実装する手順について説明します。

＜この項の構成＞

(1)　デプロイ定義ファイルにセキュリティ情報を付加する

(2)　ユーザー作成のプログラムを実装する

(3)　WARファイルを作成する

(1)　デプロイ定義ファイルにセキュリティ情報を付加する

SOAPアプリケーションの形態が，RPCまたはEJBの場合

開発ステップ「（c）サーバスケルトンの作成」で，Webサービスセキュリティ機能に関する情報※を，サーバ側WARファイルのWEB-INFの下のデプロイ定義ファイルに手動で追加します。

SOAPアプリケーションの形態が，既存Javaクラスを利用，またはメッセージングの場合

開発ステップ「（e）WARファイルの作成」で，Webサービスセキュリティ機能に関する情報※をサーバ側WARファイルのWEB-INFの下のデプロイ定義ファイルに手動で追加します。

注※

「Webサービスセキュリティ機能に関する情報」を次に示します。

<handler name="WSSResponseSenderHandler" type="java:com.cosminexus.wss.handlers.WSSResponseSenderHandler"/>
<handler name="WSSRequestReceiverHandler" type="java:com.cosminexus.wss.handlers.WSSRequestReceiverHandler"/>

<requestFlow>
<handler type="WSSRequestReceiverHandler"/>
</requestFlow>
<responseFlow>
<handler type="WSSResponseSenderHandler"/>
</responseFlow>

Windowsの場合，サーバ側のデプロイ定義ファイル（server-config.xml）のサンプルは，サンプルディレクトリの下の，機能ごとのサービスに格納されていますので，参考にしてください。次に，格納先の一例を示します。

＜Cosminexusのインストールディレクトリ＞/wss/samples/ の下

usernameToken/rpc/service/WEB-INF

(2)　ユーザー作成のプログラムを実装する

Webサービスセキュリティ機能が提供するAPIを利用する場合は，開発ステップ「（d）サーバ実装」で，ユーザー作成のプログラムを実装します。詳細については，マニュアル「Cosminexus　SOAPアプリケーション開発ガイド」を参照してください。

(3)　WARファイルを作成する

開発ステップ「（e）WARファイルの作成」で，Webサービスセキュリティ機能が提供するWebサービスセキュリティ機能定義ファイル，およびWebサービスセキュリティポリシー定義ファイルをサーバ側WARファイルのWEB-INF/classesの下に組み込みます。Webサービスセキュリティ機能定義ファイルとWebサービスセキュリティポリシー定義ファイルについては，構文チェック用のコマンドを使用して，構文に誤りがないことを事前に確認してください。構文チェック用のコマンドの使い方については，「4.2　定義ファイル構文チェックコマンド（CWSSConfCheck）」を参照してください。

WARファイルへの組み込み方法については，マニュアル「Cosminexus　SOAPアプリケーション開発ガイド」を参照してください。

サーバ側の実装に関するファイルの配置は，各アプリケーションごと（WARファイルごと）に次のようになります。

WEB-INF
├server-config.xml      デプロイ定義ファイル
└classes
 ├security-config.xml  Webサービスセキュリティ機能定義ファイル
 └policy-config.xml    Webサービスセキュリティポリシー定義ファイル

3.9.2　クライアント側がWebアプリケーションの場合の実装手順

Webサービスセキュリティ機能をクライアント側のWebアプリケーションに実装する手順について説明します。

＜この項の構成＞

(1)　デプロイ定義ファイルを組み込む

(2)　ユーザー作成のプログラムを実装する

(3)　WARファイルを作成する

(1)　デプロイ定義ファイルを組み込む

開発ステップ「（g）クライアントスタブの生成」で，Webサービスセキュリティ機能が提供するクライアント用のデプロイ定義ファイル（client-config.xml）を，クライアント側WARファイルのWEB-INF/classesの下に組み込みます。Windowsの場合，Webサービスセキュリティ機能が提供するクライアント用のデプロイ定義ファイルは，サンプルディレクトリの下の，機能ごとのクライアントに格納されています。どのクライアント用のデプロイ定義ファイルも内容は同じです。次に，格納先の一例を示します。

＜Cosminexusのインストールディレクトリ＞/wss/samples/ の下

usernameToken/rpc/client/WEB-INF/classes

(2)　ユーザー作成のプログラムを実装する

Webサービスセキュリティ機能が提供するAPIを利用する場合は，開発ステップ「（h）クライアントの実装」で，ユーザー作成のプログラムを実装します。詳細については，マニュアル「Cosminexus　SOAPアプリケーション開発ガイド」を参照してください。

(3)　WARファイルを作成する

サンプルファイルを基に作成したWebサービスセキュリティ機能定義ファイル，およびWebサービスセキュリティポリシー定義ファイルをクライアント側WARファイルのWEB-INF/classesの下に組み込みます。Webサービスセキュリティ機能定義ファイルとWebサービスセキュリティポリシー定義ファイルについては，構文チェック用のコマンドを使用して，構文に誤りがないことを事前に確認してください。構文チェック用のコマンドの使い方については，「4.2　定義ファイル構文チェックコマンド（CWSSConfCheck）」を参照してください。

WARファイルへの組み込み方法については，マニュアル「Cosminexus　SOAPアプリケーション開発ガイド」を参照してください。

クライアント側の実装に関するファイルの配置は，各アプリケーションごと（WARファイルごと）に次のようになります。

WEB-INF
└classes
 ├client-config.xml    デプロイ定義ファイル
 ├security-config.xml  Webサービスセキュリティ機能定義ファイル
 └policy-config.xml    Webサービスセキュリティポリシー定義ファイル

3.9.3　クライアント側がコマンドラインJavaアプリケーションの場合の実装手順

サンプルファイルを基に作成したWebサービスセキュリティ機能定義ファイル，Webサービスセキュリティポリシー定義ファイル，およびデプロイ定義ファイルを，クライアント実行環境のCLASSPATHに設定したディレクトリの下に格納します。なお，Webサービスセキュリティ機能定義ファイルとWebサービスセキュリティポリシー定義ファイルについては，構文チェック用のコマンドを使用して，構文に誤りがないことを事前に確認してください。構文チェック用のコマンドの使い方については，「4.2　定義ファイル構文チェックコマンド（CWSSConfCheck）」を参照してください。

3.9.4　JAASログインモジュールの実装時の注意

ここでは，JAASログインモジュールを実装する際の注意事項について説明します。なお，JAASログインモジュールはユーザー側で開発します。一般的なJAASログインモジュールの開発方法については，Sun Microsystems,Inc. が公開しているJAAS認証に関するリファレンスガイドを参照してください。

＜この項の構成＞

(1)　 Callbackオブジェクトの生成について

(2)　ログイン構成ファイルの配置について

(1)　 Callbackオブジェクトの生成について

JAASログインモジュールで認証情報を取得するためには，Webサービスセキュリティ機能が提供するコールバックハンドラを使用します。次に，JAASログインモジュール内で必要な処理を示します。

LoginModule.initialize

コールバックハンドラ（javax.security.auth.callback.CallbackHandlerの実装クラス）をクラスメンバ変数に保持します。

LoginModule.login

コールバックハンドラ内で使用するCallbackオブジェクト（javax.security.auth.callback.Callback）の配列を生成して，コールバックハンドラのhandleメソッドを呼び出します。handleメソッドを呼び出したあと，Callbackオブジェクトから認証情報を取り出して認証処理を行います。Callbackオブジェクトの配列は，次の表に示す構成で生成してください。

表3-4　生成するCallbackオブジェクトの配列

配列番号 | Callbackオブジェクト | 用途
0 | javax.security.auth.callback.NameCallback | ユーザー名の取得
1 | javax.security.auth.callback.PasswordCallback | パスワードの取得
2 | javax.security.auth.callback.TextInputCallback | パスワード形式の取得
3 | javax.security.auth.callback.TextInputCallback | Nonce値の取得
4 | javax.security.auth.callback.TextInputCallback | Created値の取得

配列要素の取得方法を次に示します。

0：ユーザー名の取得

ユーザー名はjavax.security.auth.callback.NameCallback.getName()メソッドで取得します。

1：パスワードの取得

パスワードはjavax.security.auth.callback.PasswordCallback.getPassword()メソッドで取得します。パスワード形式がテキスト形式の場合，パスワードテキスト文字配列を返します。パスワード形式がダイジェスト形式の場合，ダイジェスト形式の文字配列を返します。パスワード省略時はnullを返します。

2：パスワード形式の取得

パスワード形式はjavax.security.auth.callback.TextInputCallback.getText()メソッドで取得します。パスワードの形式は次の文字列で返します。

"PasswordText"：テキスト形式

"PasswordDigest"：ダイジェスト形式

3：Nonce値の取得

Nonce値はjavax.security.auth.callback.TextInputCallback.getText()メソッドで取得します。

4：Created値の取得

Created値はjavax.security.auth.callback.TextInputCallback.getText()メソッドで取得します。

Windowsの場合，JAASログインモジュールのコーディング例については，次のディレクトリに格納されているサンプルを参照してください。

＜Cosminexusのインストールディレクトリ＞/wss/samples/ の下

usernameToken/rpc/Auth
usernameToken/rpc/client/WEB-INF/classes/localhost
usernameToken/rpc/service/WEB-INF/classes/localhost

(2)　ログイン構成ファイルの配置について

Cosminexus Component Container のユーザー定義ファイル（usrconf.properties）に，次のエントリーを追加してください。

java.security.auth.login.config==＜ログイン構成ファイルのフルパス名＞

ユーザー定義ファイルについては，マニュアル「Cosminexus　リファレンス　定義編」を参照してください。

4.　Webサービスセキュリティ機能が提供するコマンド

この章では，Webサービスセキュリティ機能が提供するコマンドの使い方について説明します。

＜この章の構成＞

4.1　共通鍵生成コマンド（CWSSCreateSecretKey）

4.2　定義ファイル構文チェックコマンド（CWSSConfCheck）

4.1　共通鍵生成コマンド（CWSSCreateSecretKey）

共通鍵生成コマンドを使用して，暗号化機能を利用するときに必要な共通鍵を生成します。共通鍵生成コマンドを実行すると，共通鍵生成コマンドのオプションで指定したファイルに共通鍵が出力されます。共通鍵のファイルはバイナリー形式です。共通鍵生成コマンドの所在は次のとおりです。

＜Cosminexusのインストールディレクトリ＞/wss/bin/ の下

出力された共通鍵の扱い方については，「付録C.1　Webサービスセキュリティ機能定義ファイルの項目」のSecretKeyFile要素を参照してください。

＜この節の構成＞

(1)　形式

(2)　オプション

(3)　メッセージ

(4)　注意事項

(1)　形式

共通鍵生成コマンドの形式を次に示します。

CWSSCreateSecretKey.bat -h | -a <アルゴリズム識別子> -o <出力ファイル名>

コマンド名（CWSSCreateSecretKey.bat）のあとに，一つ以上の空白を挿入し，オプションを指定します。オプションと指定する値の間も一つ以上の空白を挿入します。

(2)　オプション

共通鍵生成コマンドで指定するオプションを次に示します。

表4-1　共通鍵生成コマンドのオプション

オプション
説明

-h
コマンドのオプション説明を表示します。

-a
生成する共通鍵のアルゴリズム識別子を指定します。
指定可能な値を次に示します。
"TRIPLEDES"： Triple DESブロック暗号の共通鍵を生成します。
"AES128"： AES-128ブロック暗号の共通鍵を生成します。

-o
生成した共通鍵を出力するファイル名を指定します。

(3)　メッセージ

コマンド実行時のメッセージについては，「7.2.5　KDCGKで始まるメッセージ」を参照してください。

(4)　注意事項

OSがWindows（x86およびx64）の場合だけ実行できます。ほかのOSでは実行できません。

出力ファイル名に空白が含まれる場合は出力ファイル名を「"」で囲みます。

出力ファイル名にディレクトリを含まない場合は，カレントディレクトリに出力されます。

出力ファイル名にディレクトリを含めた場合は，既存のディレクトリを指定する必要があります。

出力ファイル名には既存のファイルを指定してはいけません。

同じオプションを2回以上指定すると，最後に指定したオプションの値が有効になります。次の例では，共通鍵はfile2に出力されます。

例

CWSSCreateSecretKey.bat -a AES128 -o file1 -o file2

4.2　定義ファイル構文チェックコマンド（CWSSConfCheck）

Webサービスセキュリティ機能定義ファイル，およびWebサービスセキュリティポリシー定義ファイルを作成したあと，設定したXMLの構文が正しいかどうかをチェックするために，定義ファイル構文チェックコマンドを使用します。定義ファイル構文チェックコマンドの所在は次のとおりです。

＜Cosminexusのインストールディレクトリ＞/wss/bin/ の下

＜この節の構成＞

(1)　形式

(2)　オプション

(3)　終了コード

(4)　メッセージ

(5)　注意事項

(1)　形式

定義ファイル構文チェックコマンドの形式を次に示します。

CWSSConfCheck.bat -h | [-s | -p] -f <チェックする定義ファイル名>

コマンド名（CWSSConfCheck.bat）のあとに，一つ以上の空白を挿入し，オプションを指定します。オプションと指定する値の間も一つ以上の空白を挿入します。

(2)　オプション

構文チェックコマンドで指定するオプションを次に示します。

表4-2　定義ファイル構文チェックコマンドのオプション

オプション | 説明
-h | コマンドのオプション説明を表示します。
-s | -fオプションで指定するファイルが，Webサービスセキュリティ機能定義ファイルの場合に指定します。
-p | -fオプションで指定するファイルが，Webサービスセキュリティポリシー定義ファイルの場合に指定します。
-f | チェック対象の定義ファイル名を指定します。

(3)　終了コード

構文チェックコマンドの終了コードを次に示します。

０：正常終了

１：エラー終了

(4)　メッセージ

コマンド実行時のメッセージについては，「7.2.6　KDCGOで始まるメッセージ」を参照してください。

(5)　注意事項

OSがWindows（x86およびx64）の場合だけ実行できます。ほかのOSでは実行できません。

入力ファイル名に空白が含まれる場合は入力ファイル名を「"」で囲みます。

構文チェックで不正な構文があった場合，または内部エラーが発生した場合，エラーメッセージが標準出力に表示されます。

同じオプションを2回以上指定すると，最後に指定したオプションの値が有効になります。次の例では，file2に対してだけ構文をチェックします。

例

CWSSConfCheck -s -f file1.xml -f file2.xml

5.　Webサービスセキュリティ機能が提供するAPI

この章では，Webサービスセキュリティ機能が提供するAPIについて説明します。

＜この章の構成＞

5.1　インタフェースおよびクラスの一覧

5.2　 WSSElementProxyFactoryクラス（セキュリティ項目操作クラスの生成）

5.3　 WSSElementProxyクラス（セキュリティ項目の操作）

5.4　 WSSUsernameTokenクラス（UsernameToken要素の操作）

5.5　 WSSUsernameToken.PasswordTypeインタフェース（PasswordType要素の操作）

5.6　 WSSExceptionクラス（例外情報の取得）

5.1　インタフェースおよびクラスの一覧

Webサービスセキュリティ機能が提供するインタフェースおよびクラスの一覧を次に示します。

表5-1　提供するインタフェースおよびクラスの一覧

インタフェース名および
クラス名
説明

WSSElementProxyFactory
セキュリティ項目操作クラスのファクトリクラス

WSSElementProxy
セキュリティ項目操作クラス

WSSUsernameToken
UsernameToken要素の操作クラス

WSSUsernameToken.PasswordType
UsernameToken要素のパスワード種別を示す列挙定数

WSSException
例外情報を保持するクラス

5.2　 WSSElementProxyFactoryクラス（セキュリティ項目操作クラスの生成）

セキュリティ項目操作クラスのファクトリクラスです。

クラス定義

public final class WSSElementProxyFactory

パッケージ名

com.cosminexus.wss.element

WSSElementProxyFactoryクラスのメソッドを次の表に示します。

表5-2　WSSElementProxyFactoryクラスのメソッド一覧

メソッド
機能概要

newWSSElementProxy
（スタブクラスから生成）
スタブクラスから空のセキュリティ項目操作クラスのインスタンスを生成します。

newWSSElementProxy
（メッセージクラスから生成）
メッセージ送信クラスから空のセキュリティ項目操作クラスのインスタンスを生成します。

newWSSElementProxy
（実装クラスから生成）
空のセキュリティ項目操作クラスのインスタンスを生成します。

getWSSElementProxy
（スタブクラスから生成）
スタブクラスから，受信したメッセージのセキュリティ項目操作クラスのインスタンスを生成します。

getWSSElementProxy
（メッセージクラスから生成）
メッセージ送信クラスから，受信したメッセージのセキュリティ項目操作クラスのインスタンスを生成します。

getWSSElementProxy
（実装クラスから生成）
受信したメッセージのセキュリティ項目操作クラスのインスタンスを生成します。

次に，各メソッドの詳細について説明します。

＜この節の構成＞

newWSSElementProxy（スタブクラスから生成）

newWSSElementProxy（メッセージクラスから生成）

newWSSElementProxy（実装クラスから生成）

getWSSElementProxy（スタブクラスから生成）

getWSSElementProxy（メッセージクラスから生成）

getWSSElementProxy（実装クラスから生成）

newWSSElementProxy（スタブクラスから生成）

クラス名：WSSElementProxyFactory

機能

スタブクラスから空のセキュリティ項目操作クラスのインスタンスを生成します。このメソッドの引数で指定したクライアントのインタフェースクラスのサービスメソッドを呼び出すと，セキュリティ項目操作クラスに設定した内容でセキュリティ要素を生成します。このメソッドは，呼び出すサービスメソッドの形態がRPCまたはEJBの場合に使用します。

構文

public static WSSElementProxy newWSSElementProxy (
    javax.xml.rpc.Stub a_Stub
) throws WSSException;

引数

表5-3　newWSSElementProxy（スタブクラスから生成）メソッドの引数

仮引数名 | 名称 | in/out | 説明
a_Stub | スタブクラス | in | クライアントのインタフェースクラス（スタブクラス）を指定します。

戻り値

セキュリティ項目操作クラスのインスタンスです。

例外

WSSException

処理中に予測しない例外が発生した場合にスローされます。

注意事項

メソッドの引数の指定とは異なるクライアントのインタフェースクラスのサービスメソッドを呼び出した場合，セキュリティ項目操作クラスに設定した内容は反映しません。Webサービスセキュリティ機能定義ファイルに設定した内容に従って，セキュリティ項目を設定します。

メソッドで取得したセキュリティ項目操作クラスが提供するメソッドを利用しないでサービスメソッドを呼び出した場合，Webサービスセキュリティ機能定義ファイルに設定した内容に従って，セキュリティ項目を設定します。

送信時にWebサービスセキュリティ機能を利用しない場合は，このメソッドで取得したセキュリティ項目操作クラスが提供するメソッドを設定しても，セキュリティ項目はSOAPメッセージに設定しません。Webサービスセキュリティ機能を利用しない場合を次に示します。

Webサービスセキュリティ機能定義ファイルが送信時にデプロイされていない場合

Webサービスセキュリティ機能定義ファイル中のリクエストメッセージ送信時の設定が省略されている場合

newWSSElementProxy（メッセージクラスから生成）

クラス名：WSSElementProxyFactory

機能

メッセージ送信クラスから空のセキュリティ項目操作クラスのインスタンスを生成します。このメソッドの引数で指定したSOAPMessageSenderクラスのsendMessageメソッドを呼び出すと，セキュリティ項目操作クラスに設定した内容でセキュリティ要素を生成します。このメソッドは，呼び出すサービスメソッドの形態がメッセージングの場合に使用します。

構文

public static WSSElementProxy newWSSElementProxy (
    com.cosminexus.c4web.service.message.SOAPMessageSender a_Sender
) throws WSSException;

引数

表5-4　newWSSElementProxy（メッセージクラスから生成）メソッドの引数

仮引数名
名称
in/out
説明

a_Sender
メッセージ
送信クラス
in
SOAP通信基盤が提供するSOAPMessageSenderクラスを指定します。

戻り値

セキュリティ項目操作クラスのインスタンスです。

例外

WSSException

処理中に予測しない例外が発生した場合にスローされます。

注意事項

SOAP通信基盤の標準モードではこのメソッドは使用できません。呼び出すサービスメソッドの形態がメッセージングのときにユーザプログラムからセキュリティヘッダにアクセスしたい場合は，SOAP通信基盤の互換モードでこのメソッドを使用します。SOAP通信基盤のモードについては，マニュアル「Cosminexus　SOAP　アプリケーション開発ガイド」を参照してください。

メソッドの引数の指定とは異なるインスタンスのSOAPMessageSenderクラスのsendMessageメソッドを呼び出した場合，セキュリティ項目操作クラスに設定した内容は反映しません。Webサービスセキュリティ機能定義ファイルに設定した内容に従って，セキュリティ項目を設定します。

メソッドで取得したセキュリティ項目操作クラスが提供するメソッドを利用しないでsendMessageメソッドを呼び出した場合，Webサービスセキュリティ機能定義ファイルに設定した内容に従って，セキュリティ項目を設定します。

送信時にWebサービスセキュリティ機能を利用しない場合は，このメソッドで取得したセキュリティ項目操作クラスが提供するメソッドを利用しても，セキュリティ項目はSOAPメッセージに設定しません。Webサービスセキュリティ機能を利用しない場合を次に示します。

Webサービスセキュリティ機能定義ファイルが送信時にデプロイされていない場合

Webサービスセキュリティ機能定義ファイル中のリクエストメッセージ送信時の設定が省略されている場合

newWSSElementProxy（実装クラスから生成）

クラス名：WSSElementProxyFactory

機能

空のセキュリティ項目操作クラスのインスタンスを生成します。このメソッドは，スタブまたはメッセージクラスから生成するメソッドとは異なり，SOAPサービスの実装クラスでサービスの応答を送信する際に使用します。このメソッドで取得したセキュリティ項目操作クラスが提供するメソッドを利用すると，サービスの応答をクライアントに送信する際に，セキュリティ項目操作クラスに設定した内容でセキュリティ要素を生成します。

構文

public static WSSElementProxy newWSSElementProxy (
) throws WSSException;

引数

ありません。

戻り値

セキュリティ項目操作クラスのインスタンスです。

例外

WSSException

処理中に予測しない例外が発生した場合にスローされます。

注意事項

メソッドで取得したセキュリティ項目操作クラスが提供するメソッドを利用しない場合，Webサービスセキュリティ機能定義ファイルに設定した内容に従って，レスポンスメッセージ内のセキュリティ項目を設定します。

メソッドをリクエスト受信処理以外の場所で呼び出した場合はnullを返します。

送信時にWebサービスセキュリティ機能を利用しない場合は，このメソッドで取得したセキュリティ項目操作クラスが提供するメソッドを利用しても，セキュリティ項目は設定しません。Webサービスセキュリティ機能を利用しない場合を次に示します。

Webサービスセキュリティ機能定義ファイルが送信時にデプロイされていない場合

Webサービスセキュリティ機能定義ファイル中のリクエストメッセージ送信時の設定が省略されていた場合

getWSSElementProxy（スタブクラスから生成）

クラス名：WSSElementProxyFactory

機能

スタブクラスから，受信したメッセージのセキュリティ項目操作クラスのインスタンスを生成します。このメソッドの引数で指定したクライアントのインタフェースクラスのサービスメソッドの呼び出し後にこのメソッドを呼び出すと，サービスメソッドのレスポンスメッセージに含まれるセキュリティ項目を取得し，セキュリティ項目操作クラスを生成します。その後，このメソッドで取得したセキュリティ項目操作クラスのメソッドを呼び出すことで，セキュリティ項目を取得できます。

構文

public static WSSElementProxy[] getWSSElementProxy (
    javax.xml.rpc.Stub a_Stub
) throws WSSException;

引数

表5-5　getWSSElementProxy（スタブクラスから生成）メソッドの引数

仮引数名 | 名称 | in/out | 説明
a_Stub | スタブクラス | in | RPCまたはEJBを利用したSOAPアプリケーションの場合で，SOAPアプリケーション開発支援機能によって作成されるクライアントのインタフェースクラス（スタブクラス）を指定します。

戻り値

セキュリティ項目操作クラスのインスタンス配列です。セキュリティ項目操作クラスが生成できない場合はnullを返します。

例外

WSSException

処理中に予測しない例外が発生した場合にスローされます。

注意事項

このメソッドは，引数に指定したスタブクラスのサービスメソッドの呼び出し直後に必ず呼び出すようにしてください。引数に指定したものと異なるスタブクラスのサービスメソッド呼び出し直後にこのメソッドを呼び出した場合，引数に指定したスタブクラスのサービスメソッドの応答メッセージに含まれるセキュリティ項目は取得されません。

メソッドで取得するセキュリティ項目は，このメソッドを呼び出す直前に呼び出したサービスメソッドのレスポンスメッセージに含まれるセキュリティ項目です。サービスメソッドを複数回呼び出した場合，最後のサービスメソッド呼び出しのレスポンスメッセージに含まれるセキュリティ項目を取得します。サービスメソッドを一度も呼び出さないで，このメソッドを呼び出した場合はnullを返します。

戻り値であるセキュリティ項目クラスの配列の順序と，レスポンスメッセージに含まれるセキュリティ項目の順序は必ずしも一致しません。

getWSSElementProxy（メッセージクラスから生成）

クラス名：WSSElementProxyFactory

機能

メッセージ送信クラスから，受信したメッセージのセキュリティ項目操作クラスのインスタンスを生成します。このメソッドの引数で指定したSOAPMessageSenderクラスのsendMessageメソッドの呼び出し後にこのメソッドを呼び出すと，sendMessageメソッドのレスポンスメッセージに含まれるセキュリティ項目を取得し，セキュリティ項目操作クラスを生成します。その後，このメソッドで取得したセキュリティ項目操作クラスのメソッドを呼び出すことで，セキュリティ項目を取得できます。

構文

public static WSSElementProxy[] getWSSElementProxy (
    com.cosminexus.c4web.service.message.SOAPMessageSender a_Sender
) throws WSSException;

引数

表5-6　getWSSElementProxy（メッセージクラスから生成）メソッドの引数

仮引数名
名称
in/out
説明

a_Sender
メッセージ
送信クラス
in
メッセージングを利用したSOAPアプリケーションの場合で，SOAPアプリケーション開発支援機能が提供するSOAPMessageSenderクラスを指定します。

戻り値

セキュリティ項目操作クラスのインスタンス配列です。セキュリティ項目操作クラスが生成できない場合はnullを返します。

例外

WSSException

処理中に予測しない例外が発生した場合にスローされます。

注意事項

SOAP通信基盤の標準モードではこのメソッドは使用できません。呼び出すサービスメソッドの形態がメッセージングのときにユーザプログラムからセキュリティヘッダにアクセスしたい場合は，SOAP通信基盤の互換モードでこのメソッドを使用します。SOAP通信基盤のモードについては，マニュアル「Cosminexus　SOAP　アプリケーション開発ガイド」を参照してください。

メソッドで取得するセキュリティ項目は，このメソッドを呼び出す直前に呼び出したサービスメソッドのレスポンスメッセージに含まれるセキュリティ項目です。サービスメソッドを複数回呼び出した場合，最後のサービスメソッド呼び出しのレスポンスメッセージに含まれるセキュリティ項目を取得します。サービスメソッドを一度も呼び出さないで，このメソッドを呼び出した場合はnullを返します。

戻り値であるセキュリティ項目クラスの配列の順序と，レスポンスメッセージに含まれるセキュリティ項目の順序は必ずしも一致しません。

getWSSElementProxy（実装クラスから生成）

クラス名：WSSElementProxyFactory

機能

受信したメッセージのセキュリティ項目操作クラスのインスタンスを生成します。このメソッドは，スタブまたはメッセージクラスから生成するメソッドとは異なり，SOAPサービスの実装クラスでサービスのリクエストメッセージに含まれるセキュリティ項目を取得する際に使用します。SOAPサービスの実装クラスでこのメソッドを呼び出すと，リクエストメッセージに含まれるセキュリティ項目を取得し，セキュリティ項目操作クラスを生成します。その後，このメソッドで取得したセキュリティ項目操作クラスのメソッドを呼び出すことで，セキュリティ項目を取得できます。

構文

public static WSSElementProxy[] getWSSElementProxy (
) throws WSSException;

引数

ありません。

戻り値

セキュリティ項目操作クラスのインスタンス配列です。セキュリティ項目操作クラスが生成できない場合はnullを返します。

例外

WSSException

処理中に予測しない例外が発生した場合にスローされます。

注意事項

このメソッドで取得するセキュリティ項目は，Webサービスセキュリティ機能が処理するセキュリティ項目です。

戻り値であるセキュリティ項目クラスの配列の順序と，リクエストメッセージに含まれるセキュリティ項目の順序は必ずしも一致しません。

5.3　 WSSElementProxyクラス（セキュリティ項目の操作）

セキュリティ項目の操作クラスです。

クラス定義

public final class WSSElementProxy

パッケージ名

com.cosminexus.wss.element

WSSElementProxyクラスのメソッドを次の表に示します。

表5-7　WSSElementProxyクラスのメソッド一覧

メソッド名称 | 説明
getWSSUsernameToken | UsernameToken要素クラスのインスタンスを取得します。
setWSSUsernameToken | UsernameToken要素クラスのインスタンスをセキュリティ項目操作クラスのインスタンスに設定します。
removeWSSUsernameToken | UsernameToken要素クラスのインスタンスをセキュリティ項目操作クラスのインスタンスから削除します。
getRole | セキュリティ項目のrole属性を取得します。
setRole | セキュリティ項目のrole属性を設定します。

＜この節の構成＞

getWSSUsernameToken

setWSSUsernameToken

removeWSSUsernameToken

getRole

setRole

getWSSUsernameToken

クラス名：WSSElementProxy

機能

UsernameToken要素クラスのインスタンスを取得します。

構文

public WSSUsernameToken[] getWSSUsernameToken (
) throws WSSException;

引数

ありません。

戻り値

UsernameToken要素クラスのインスタンス配列です。

例外

WSSException

処理中に予測しない例外が発生した場合にスローされます。

注意事項

セキュリティ項目操作クラスのファクトリクラスの，newWSSElementProxyメソッドによって取得したWSSElementProxyクラスのインスタンスの場合，このメソッドの戻り値はnullです。ただし，setWSSUsernameTokenを呼んだ後，このメソッドを呼び出すとsetWSSUsernameTokenで指定した値を返します。

戻り値のUsernameToken要素クラスのインスタンス配列の順序と，メッセージ中のUsernameToken要素の順序とは必ずしも一致しません。

setWSSUsernameToken

クラス名：WSSElementProxy

機能

UsernameToken要素クラスのインスタンスをセキュリティ項目操作クラスに設定します。

構文

public void setWSSUsernameToken (
    WSSUsernameToken a_UsernameToken
) throws WSSException;

引数

表5-8　setWSSUsernameTokenメソッドの引数

仮引数名 | 名称 | in/out | 説明
a_UsernameToken | UsernameToken要素クラス | in | セキュリティ項目操作クラスに設定するUsernameToken要素操作クラスのインスタンスを指定します。

戻り値

ありません。

例外

WSSException

処理中に予測しない例外が発生した場合にスローされます。

注意事項

引数にnullを指定した場合，セキュリティ項目操作クラスにUsernameToken要素クラスを設定しないで正常終了します。すでにUsernameToken要素クラスを設定している場合は，元のUsernameToken要素クラスも更新しません。

removeWSSUsernameToken

クラス名：WSSElementProxy

機能

UsernameToken要素クラスのインスタンスをセキュリティ項目操作クラスから削除します。

構文

public void removeWSSUsernameToken (
) throws WSSException;

引数

ありません。

戻り値

ありません。

例外

WSSException

処理中に予測しない例外が発生した場合にスローされます。

注意事項

UsernameToken要素クラスのインスタンスがセキュリティ項目操作クラスに存在しない場合，何も処理をしないで正常終了します。

getRole

クラス名：WSSElementProxy

機能

セキュリティ項目のrole属性値を取得します。

構文

public java.net.URI getRole (
) throws WSSException;

引数

ありません。

戻り値

セキュリティ項目に含まれるrole属性値です。セキュリティ項目にrole属性がない場合はnullを返します。

例外

ありません。

setRole

クラス名：WSSElementProxy

機能

セキュリティ項目のrole属性値を設定します。

構文

public void setRole (
    java.net.URI a_Role
) throws WSSException;

引数

表5-9　setRoleメソッドの引数

仮引数名 | 名称 | in/out | 説明
a_Role | role属性値 | in | セキュリティ項目操作クラスに設定するrole属性値を指定します。

戻り値

ありません。

例外

ありません。

5.4　 WSSUsernameTokenクラス（UsernameToken要素の操作）

UsernameToken要素の操作クラスです。

クラス定義

public final class WSSUsernameToken extends
    com.cosminexus.wss.element.WSSElementBase

パッケージ名

com.cosminexus.wss.element

WSSUsernameTokenクラスのメソッドを次の表に示します。

表5-10　WSSUsernameTokenクラスのメソッド一覧

メソッド名称 | 説明
コンストラクタ | UsernameToken要素クラスのコンストラクタです。
getUsername | ユーザー名を取得します。
setUsername | ユーザー名を設定します。
getPassword | パスワードを取得します。
setPassword | パスワードを設定します。
getId | UsernameToken要素のId属性を取得します。
setId | UsernameToken要素のId属性を設定します。
getPasswordType | パスワード種別を取得します。
setPasswordType | パスワード種別を設定します。
getNonce | Nonce属性を取得します。
getCreated | Created属性を取得します。

注意事項

セキュリティ項目操作クラスのインスタンスを，セキュリティ項目操作クラスのファクトリクラスのnewWSSElementProxyメソッドによって生成した場合，このクラスのメソッドで指定した内容でUsernameToken要素を生成します。ただし，Webサービスセキュリティ機能定義ファイルに，呼び出すサービスメソッドに対応するSenderPortConfig要素，RoleConfig要素の指定がない場合はUsernameToken要素を生成しません。

セキュリティ項目操作クラスのインスタンスを，セキュリティ項目操作クラスのファクトリクラスのgetWSSElementProxyメソッドによって生成した場合，このクラスの名称がsetで始まるメソッドで値を設定しても，UsernameToken要素は生成しません。

Webサービスセキュリティ機能定義ファイルにUsernameToken要素を定義している場合，このメソッドが生成したUsernameToken要素とは別に，複数のUsernameToken要素を生成します。

＜この節の構成＞

コンストラクタ

getUsername

setUsername

getPassword

setPassword

getId

setId

getPasswordType

setPasswordType

getNonce

getCreated

コンストラクタ

機能

UsernameToken要素クラスのコンストラクタです。

構文

public WSSUsernameToken (
    java.lang.String a_Username
) throws WSSException;

引数

表5-11　コンストラクタの引数

仮引数名 | 名称 | in/out | 説明
a_Username | ユーザー名 | in | ユーザー名を示す文字列を指定します。

戻り値

UsernameToken要素クラスのインスタンスです。

例外

WSSException

引数に空文字またはnullが指定されました。

注意事項

このクラスが生成される際のUsernameToken要素の初期値を次に示します。

表5-12　UsernameToken要素の初期値

クラスの要素
初期値1 ※1
初期値２ ※2

Username
コンストラクタの引数で指定したユーザー名
UsernameToken要素のユーザー名

Password
null
UsernameToken要素のパスワード

PasswordType
WSSUsernameToken.PasswordType.TEXT
WSSUsernameToken.PasswordType.TEXT
または
WSSUsernameToken.PasswordType.DIGEST

Id
null
UsernameToken要素のId属性

Nonce
null
UsernameToken要素のNonce属性

Created
null
UsernameToken要素のCreated属性

注※1

コンストラクタを使用した場合

注※2

このクラスをセキュリティ項目操作クラスのgetWSSUsernameTokenメソッドで生成した場合

引数にnullを設定した場合，WSSException例外が発生します。

引数に空文字""を設定した場合，WSSException例外が発生します。

引数に一つ以上の空白文字を設定した場合，ユーザー名の情報は一つ以上の空白文字に置き換えられます。

getUsername

クラス名：WSSUsernameToken

機能

UsernameToken要素のユーザー名を取得します。

構文

public java.lang.String getUsername (
);

引数

ありません。

戻り値

UsernameToken要素のユーザー名です。

例外

ありません。

setUsername

クラス名：WSSUsernameToken

機能

UsernameToken要素のユーザー名を設定します。

構文

public void setUsername (
    java.lang.String a_Username
) throws WSSException;

引数

表5-13　setUsernameメソッドの引数

仮引数名 | 名称 | in/out | 説明
a_Username | ユーザー名 | in | ユーザー名を示す文字列を指定します。

戻り値

ありません。

例外

WSSException

　引数に空文字""が指定されました。

注意事項

引数にnullを設定した場合，このクラスが保持するユーザー名の情報は更新しません。

引数に一つ以上の空白文字を設定した場合，このクラスが保持するユーザー名の情報は一つ以上の空白文字に置き換えられます。

getPassword

クラス名：WSSUsernameToken

機能

UsernameToken要素のパスワードを取得します。

構文

public char[] getPassword (
);

引数

ありません。

戻り値

UsernameToken要素のパスワードです。UsernameToken要素にパスワードがない場合はnullを返します。

例外

ありません。

注意事項

セキュリティ項目操作クラスのインスタンスを，セキュリティ項目操作クラスのファクトリクラスのnewWSSElementProxyメソッドによって生成した際，UsernameToken要素内にPassword要素が存在しない場合はnullを返します。ただし，すでにsetPasswordメソッドでパスワードを設定している場合はその値を返します。

受信メッセージのセキュリティ項目の，UsernameToken要素内のPassword要素が空要素の場合はnullを返します。

セキュリティ項目操作クラスのインスタンスを，セキュリティ項目操作クラスのファクトリクラスのgetWSSElementProxyメソッドによって生成した際，受信メッセージ内のPassword要素の種別が平文（SOAPメッセージのPasswordText要素）の場合は平文のパスワードを返します。Password要素の種別がダイジェスト（SOAPメッセージのPasswordDigest要素）の場合はダイジェスト値をそのまま返します。

setPassword

クラス名：WSSUsernameToken

機能

UsernameToken要素のパスワードを設定します。

構文

public void setPassword (
    char[] a_Password
);

引数

表5-14　setPasswordメソッドの引数

仮引数名 | 名称 | in/out | 説明
a_Password | パスワード | in | パスワードを指定します。

戻り値

ありません。

例外

ありません。

注意事項

引数にnullまたは空文字""を設定した場合，このクラスに設定したパスワードの情報は更新されません。

引数に空白文字を設定した場合，このクラスに設定したパスワードの情報は空白文字に置き換えられます。

getId

クラス名：WSSUsernameToken

機能

UsernameToken要素のId属性を取得します。

構文

public java.lang.String getId (
);

引数

ありません。

戻り値

UsernameToken要素のId属性値を示す文字列です。UsernameToken要素にId属性がない場合はnullを返します。

例外

ありません。

注意事項

このメソッドで取得するのは，UsernameToken要素のId属性です。

セキュリティ項目操作クラスのインスタンスを，セキュリティ項目操作クラスのファクトリクラスのnewWSSElementProxyメソッドによって生成した場合はnullを返します。ただし，すでにsetIdメソッドでIdを設定している場合はその値を返します。

setId

クラス名：WSSUsernameToken

機能

UsernameToken要素のId属性を設定します。

構文

public void setId (
    java.lang.String a_Id
);

引数

表5-15　setIdメソッドの引数

仮引数名 | 名称 | in/out | 説明
a_Id | Id | in | Id属性を示す文字列を指定します。

戻り値

ありません。

例外

ありません。

注意事項

このメソッドで設定したId属性値はUsernameToken要素のId属性に設定されます。ただし，ほかの要素のId属性値と重複しているかどうかはチェックしません。

getPasswordType

クラス名：WSSUsernameToken

機能

UsernameToken要素のパスワード種別を取得します。

構文

public WSSUsernameToken.PasswordType getPasswordType (
);

引数

ありません。

戻り値

UsernameToken要素のパスワード種別です。UsernameToken要素にパスワードがない場合は，WSSUsernameToken.PasswordType.TEXTを返します。

表5-16　WSSUsernameToken.PasswordTypeクラスの列挙値

列挙値
意味

WSSUsernameToken.PasswordType.TEXT
平文形式のパスワードです。
（http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-username-token-profile-1.0#PasswordText形式）

WSSUsernameToken.PasswordType.DIGEST
ダイジェスト形式のパスワードです。
（http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-username-token-profile-1.0#PasswordDigest形式）

例外

ありません。

注意事項

セキュリティ項目操作クラスのインスタンスを，セキュリティ項目操作クラスのファクトリクラスのnewWSSElementProxyメソッドによって生成した場合，WSSUsernameToken.PasswordType.TEXTを返します。ただし，すでにsetPasswordTypeメソッドでパスワード種別を設定している場合は，その値を返します。

setPasswordType

クラス名：WSSUsernameToken

機能

UsernameToken要素のパスワード種別を設定します。

構文

public void setPasswordType (
    WSSUsernameToken.PasswordType a_PasswordType
);

引数

表5-17　setPasswordTypeメソッドの引数

仮引数名
名称
in/out
説明

a_PasswordType
パスワード
種別
in
パスワード種別を示す，
WSSUsernameToken.PasswordTypeの列挙値を指定します。

戻り値

ありません。

例外

ありません。

getNonce

クラス名：WSSUsernameToken

機能

UsernameToken要素のNonce属性の内容を取得します。

構文

public java.lang.String getNonce (
);

引数

ありません。

戻り値

UsernameToken要素のNonce属性値です。UsernameToken要素にNonce属性がない場合はnullを返します。

例外

ありません。

注意事項

セキュリティ項目操作クラスのインスタンスを，セキュリティ項目操作クラスのファクトリクラスのnewWSSElementProxyメソッドによって生成した際，UsernameToken要素内にNonce属性がない場合はnullを返します。

getCreated

クラス名：WSSUsernameToken

機能

UsernameToken要素のCreated属性の内容を取得します。

構文

public java.lang.String getCreated (
);

引数

ありません。

戻り値

UsernameToken要素のCreated属性文字列です。UsernameToken要素にCreated属性がない場合はnullを返します。

例外

ありません。

注意事項

セキュリティ項目操作クラスのインスタンスを，セキュリティ項目操作クラスのファクトリクラスのnewWSSElementProxyメソッドによって生成した際，UsernameToken要素内にCreated属性がない場合はnullを返します。

5.5　 WSSUsernameToken.PasswordTypeインタフェース（PasswordType要素の操作）

PasswordType要素の操作クラスです。

クラス定義

public static final class WSSUsernameToken.PassswordType

パッケージ名

com.cosminexus.wss.element

機能

WSSUsernameTokenクラスのgetPasswordType()，setPasswordType()メソッドの戻り値および引数で指定する，PasswordType要素を示す列挙定数です。次にパスワード種別を示します。

TEXT

パスワード種別が平文形式（http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0#PasswordText）であることを示します。

DIGEST

パスワード種別がダイジェスト形式（http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-username-token-profile-1.0#PasswordDigest）であることを示します。

5.6　 WSSExceptionクラス（例外情報の取得）

Webサービスセキュリティ機能が提供するAPIで発生する例外クラスです。

クラス定義

public final class WSSException extends
    java.lang.Exception

パッケージ名

com.cosminexus.wss.faults

WSSExceptionクラスのメソッドを次の表に示します。

表5-18　WSSExceptionクラスのメソッド一覧

メソッド名称 | 説明
getMessage | 詳細メッセージを取得します。

＜この節の構成＞

getMessage

getMessage

クラス名：WSSException

機能

例外の詳細メッセージを取得します。

構文

public java.lang.String getMessage (
);

引数

ありません。

戻り値

詳細メッセージを示す文字列です。

6.　障害対策

この章では，Webサービスセキュリティ機能の実行，および運用中の障害対策のために出力される情報について説明します。

＜この章の構成＞

6.1　トレースを収集する

6.1　トレースを収集する

Webサービスセキュリティ機能では，障害対策に必要な情報をトレースとして出力します。トレースは障害の発生個所の割り出しや原因の調査などに利用します。Webサービスセキュリティ機能で出力するトレースの種類を次に示します。

表6-1　Webサービスセキュリティ機能が出力するトレースの種類

トレースの種類 | 説明
サーバトレース | Webサービスセキュリティ機能のサーバ処理部分が出力します。
クライアントトレース | Webサービスセキュリティ機能のクライアント処理部分が出力します。
コマンドトレース | Webサービスセキュリティ機能のコマンドラインインタフェースが出力します。

＜この節の構成＞

6.1.1　トレースの内容

6.1.2　トレースの出力先

6.1.3　トレースの重要度

6.1.1　トレースの内容

サーバトレース，クライアントトレース，およびコマンドトレースが出力するトレースの内容と出力例を次に示します。

＜この項の構成＞

(1)　出力内容

(2)　出力例

(1)　出力内容

表6-2　トレースの出力内容

項目
内容

日付
出力時の日付（yyyy/mm/dd形式）が出力されます。

時刻
出力時の時刻（hh:mm:ss.sss形式）が出力されます。

アプリケーション名
「wss」が出力されます。

プロセス識別子
プロセス識別子（16進数）が出力されます。

スレッド識別子
スレッド識別子（16進数）が出力されます。

メッセージID
メッセージIDが出力されます。メッセージIDを持たないものは出力されません。

メッセージ種別
OC：メソッドの入口を表します。
OD：メソッドの出口を表します。
EC：例外をキャッチしたことを表します。
ER：エラーメッセージを表示したことを表します。
FB：ほかのプログラムの処理の呼び出しを表します。
FE：呼び出したほかのプログラムの処理の終了を表します。
PB：Webサービスセキュリティ機能が提供するAPIの開始を表します。
PE：Webサービスセキュリティ機能が提供するAPIの終了を表します。

メッセージテキスト
実行時の情報を示すメッセージが出力されます。

(2)　出力例

図6-1　トレースの出力例

6.1.2　トレースの出力先

トレースの出力先を次に示します。

表6-3　トレースの出力先

トレースの種類
出力先

サーバトレース
SOAP通信基盤のサーバ側で出力するトレース※と同じファイル上に出力されます。

クライアントトレース
SOAP通信基盤のクライアント側で出力するトレース※と同じファイル上に出力されます。

コマンドトレース
SOAP通信基盤のモード※により出力先ディレクトリが異なります。

標準モードの場合
＜Cosminexusのインストールディレクトリ＞/CC/client/logs/system/ejbcl/WS

互換モードの場合
＜Cosminexusのインストールディレクトリ＞/wss/logs

このディレクトリの下に次のファイル名で出力されます。

共通鍵生成コマンドの場合
CWSSCreateSecretKey-n.log (n:1～2)

定義ファイル構文チェックコマンドの場合
CWSSConfCheck-n.log (n:1～2)

注※

SOAP通信基盤のトレース出力先とモードについては，マニュアル「Cosminexus　SOAPアプリケーション開発ガイド」を参照してください。

6.1.3　トレースの重要度

トレースの重要度を変更することで，出力するトレースの情報量を変更できます。出力する情報量を多くすることで，障害発生の要因を特定しやすくなります。ただし，出力する情報量を多くすると，プログラムの処理性能への影響が大きくなります。

トレースの重要度には次のレベルがあります。

ERROR

WARN

INFO

DEBUG

Webサービスセキュリティ機能で出力するトレースの重要度は，SOAP通信基盤の設定に従います。詳細については，マニュアル「Cosminexus　SOAPアプリケーション開発ガイド」を参照してください。

7.　メッセージ一覧

この章では，SOAPメッセージの送受信やコマンドの実行中などにエラーが発生した場合に出力されるメッセージの形式，および内容について説明します。定義ファイルの読み込み時，コマンド実行時，またはAPI使用時に出力されるメッセージについても説明します。なお，メッセージの説明では，メッセージはメッセージID順に並んでいます。

＜この章の構成＞

7.1　メッセージの形式

7.2　メッセージの内容

7.1　メッセージの形式

メッセージはそれぞれ，プレフィックス，メッセージ番号，およびメッセージ種別から構成されるメッセージIDを持っています。例えば，KDCGW0001-EというメッセージIDの場合，「KDCGW」の部分がプレフィックス，「0001」の部分がメッセージ番号，「-E」の部分がメッセージ種別を表しています。この節では，メッセージのプレフィックスと種別について説明します。

＜この節の構成＞

(1)　プレフィックス

(2)　メッセージ種別

(1)　プレフィックス

メッセージのプレフィックスは，そのメッセージが出力されるタイミングによって異なります。Webサービスセキュリティ機能を利用する場合に出力されるメッセージのプレフィックス，各プレフィックスのメッセージが出力されるタイミング，および出力先を次の表に示します。

表7-1　メッセージのプレフィックス一覧

項番 | プレフィックス | 出力のタイミング | 出力先
1 | KDCGA | Webサービスセキュリティ機能が提供するAPIで，エラーが発生した場合に出力されます。 | KDCGFおよびKDCGWで始まるメッセージの詳細部分に出力されます。
2 | KDCGC | Webサービスセキュリティ機能定義ファイルおよびWebサービスセキュリティポリシー定義ファイルを読み込む場合に，両定義ファイルに共通のエラーが発生したときに出力されます。 | KDCGF，KDCGO，またはKDCGWで始まるメッセージの詳細部分に出力されます。定義ファイル構文チェックコマンドの実行中は，標準出力およびWebサービスセキュリティ機能のトレースファイルに出力されます。
3 | KDCGF | SOAPメッセージを受信中にエラーが発生した場合に出力されます。 | SOAP通信基盤が提供するC4FaultクラスのfaultString要素として，ユーザー作成プログラムのメッセージに出力されます。メッセージの本文は，SOAP通信基盤のトレースファイルにも出力されます。
4 | KDCGJ | SOAPメッセージの認証でエラーが発生した場合に出力されます。 | SOAP通信基盤のトレースファイルに出力されます。
5 | KDCGK | 共通鍵生成コマンドの処理が正常に終了した場合，または実行中にエラーが発生した場合に出力されます。 | 標準出力およびWebサービスセキュリティ機能のトレースファイルに出力されます。
6 | KDCGO | 定義ファイル構文チェックコマンドの処理が正常に終了した場合，または実行中にエラーが発生した場合に出力されます。
7 | KDCGP | Webサービスセキュリティポリシー定義ファイルの読み込み中にエラーが発生した場合に出力されます。 | KDCGF，KDCGO，またはKDCGWで始まるメッセージの詳細部分に出力されます。定義ファイル構文チェックコマンドの実行中は，標準出力およびWebサービスセキュリティ機能のトレースファイルに出力されます。
8 | KDCGS | Webサービスセキュリティ機能定義ファイルの読み込み中にエラーが発生した場合に出力されます。
9 | KDCGW | SOAPメッセージを送信中にエラーが発生した場合に出力されます。 | SOAP通信基盤が提供するC4FaultクラスのfaultString要素として，ユーザー作成プログラムのメッセージに出力されます。メッセージの本文は，SOAP通信基盤のトレースファイルにも出力されます。

注

コマンドの詳細については，「4.　Webサービスセキュリティ機能が提供するコマンド」を参照してください。トレースファイルについては，「6.1　トレースを収集する」を参照してください。

SOAPアプリケーション開発支援機能のクラスやトレースファイルについては，マニュアル「Cosminexus　SOAPアプリケーション開発ガイド」を参照してください。

(2)　メッセージ種別

メッセージ種別には次の種類があります。

-E

エラーが発生した場合に出力されるメッセージであることを示します。このメッセージ種別を持つメッセージが出力された場合の対処方法については，「7.2　メッセージの内容」を参照してください。

-I

処理が終了したことを通知するメッセージであることを示します。このメッセージ種別を持つメッセージが出力された場合，処理は正常に終了しているので，対処は必要ありません。

-W

警告を通知するメッセージであることを示します。このメッセージ種別を持つメッセージが出力された場合の対処方法については，「7.2　メッセージの内容」を参照してください。

7.2　メッセージの内容

Webサービスセキュリティ機能のメッセージは，英文で出力されます。この節では，出力されたメッセージの意味，メッセージが出力された要因，およびメッセージが出力された場合の対処方法を，次に示す形式で説明します。

メッセージID

メッセージ本文

意味

英文のメッセージの意味を説明します。

要因

メッセージが出力された要因を説明します。

対処

メッセージが出力された場合の対処方法を説明します。

なお，メッセージは，メッセージID順に並んでいます。

＜この節の構成＞

7.2.1　KDCGAで始まるメッセージ

7.2.2　KDCGCで始まるメッセージ

7.2.3　KDCGFで始まるメッセージ

7.2.4　KDCGJで始まるメッセージ

7.2.5　KDCGKで始まるメッセージ

7.2.6　KDCGOで始まるメッセージ

7.2.7　KDCGPで始まるメッセージ

7.2.8　KDCGSで始まるメッセージ

7.2.9　KDCGWで始まるメッセージ

7.2.1　KDCGAで始まるメッセージ

KDCGAで始まるメッセージの意味，要因，および対処について説明します。

KDCGA0001-E

A user name is required.

意味

ユーザー名が必要です。

要因

WSSUsernameTokenクラスのユーザー名が指定されていません。

対処

SOAPアプリケーションの設計を見直して，WSSUsernameTokenクラスのsetUsernameメソッドでユーザー名を指定するようにしてください。

KDCGA9000-E

An unexpected error occurred during processing. (details = <詳細>)

意味

処理中に予期しないエラーが発生しました。<詳細>には，エラー内容の詳細が出力されます。

要因

Webサービスセキュリティ機能が提供するAPIを実行中に原因不明のエラーが発生しました。

対処

システム管理者に連絡してください。

7.2.2　KDCGCで始まるメッセージ

KDCGCで始まるメッセージの意味，要因，および対処について説明します。

KDCGC0001-E

A file was not found. (file = ＜ファイル名＞)

意味

<ファイル名>のファイルが見つかりません。

要因

指定されたファイルが見つからないか，指定されたファイルに対するアクセス権限がありません。

対処

指定したファイルが存在するかどうか確認してください。指定したファイルが存在するにもかかわらず，このメッセージが出力される場合は，指定したファイルに対してアクセス権限があるかどうか確認してください。ファイルに対するアクセス権限がない場合は，アクセス権限を設定してください。

KDCGC0002-E

A configuration file contains an error. (file = ＜ファイル名＞, line = ＜行番号＞, details = ＜詳細＞)

意味

定義ファイルの内容が不正です。

<ファイル名>，<行番号>，および<詳細>には，それぞれ次の内容が出力されます。

<ファイル名>

Webサービスセキュリティ機能定義ファイルまたはWebサービスセキュリティポリシー定義ファイルのフルパスが出力されます。

<行番号>

Webサービスセキュリティ機能定義ファイルまたはWebサービスセキュリティポリシー定義ファイルの中で，定義ファイル構文チェックコマンドによってエラーと判定された行の行番号が出力されます。

<詳細>

エラーの詳細が出力されます。<詳細>に出力される内容については，マニュアル「Cosminexus XML Processor　ユーザーズガイド」を参照してください。

要因

Webサービスセキュリティ機能定義ファイルまたはWebサービスセキュリティポリシー定義ファイルに対して，定義ファイル構文チェックコマンドを実行した結果，エラーが発生しました。

対処

<詳細>に出力された内容に従って，Webサービスセキュリティ機能定義ファイルまたはWebサービスセキュリティポリシー定義ファイルを修正してから，定義ファイル構文チェックコマンドを実行してください。

注意事項

SOAPアプリケーションの実行時に，このメッセージが出力された場合は，<ファイル名>，<行番号>，および<詳細>は出力されません。ただし，トレースファイルには<ファイル名>，<行番号>，および<詳細>が出力されます。トレースファイルについては，「6.1　トレースを収集する」を参照してください。

KDCGC0003-W

The specified attribute contains an invalid value. The default value was assumed. tag name = <要素名>, attribute name = <属性名> , specified value = <指定値> , value to be used = <仮定する値>

意味

属性値の内容が正しくないため，デフォルト値を仮定して処理を続行します。<要素名>,<属性名>,<指定値>,<仮定する値>にはそれぞれ次の内容が出力されます。

<要素名>
正しくない値を指定した属性を持つ要素の名称が出力されます。

<属性名>
正しくない値を指定した属性名が出力されます。

<指定値>
<属性名>に指定した属性値が出力されます。

<仮定する値>
<属性名>で指定した属性のデフォルト値が出力されます。

要因

Webサービスセキュリティ機能定義ファイルまたはWebサービスセキュリティポリシー定義ファイルで指定した属性値が正しくないため，デフォルト値を仮定して処理を続行します。

対処

<属性値>に出力される値を正しい値にしてください。

KDCGC0004-W

The property contains an invalid value. The default value was assumed. key = <キー名称>, specified value = <指定値> , value to be used = <仮定する値>

意味

指定値の内容が正しくないため，デフォルト値を仮定して処理を続行します。

<キー名称>,<指定値>,<仮定する値>にはそれぞれ次の内容が出力されます。

<キー名称>
正しくない値を指定したキー名称が出力されます。

<指定値>
<キー名称>に指定した値が出力されます。

<仮定する値>
<キー名称>で指定したキーのデフォルト値が出力されます。

要因

環境設定ファイルで指定した指定値が正しくないため，デフォルト値を仮定して処理を続行します。

対処

<キー名称>に出力されるキーの指定値を正しい値にしてください。

注意事項

このメッセージはトレースファイルだけに出力されます。

7.2.3　KDCGFで始まるメッセージ

KDCGFで始まるメッセージの意味，要因，および対処について説明します。KDCGFで始まるメッセージは，SOAPFault形式で出力されます。SOAPFault形式のメッセージには，次に示す四つの項目があります。

FaultCode

Faultコードが出力されます。Faultコードは，接頭辞とローカル部で構成されます。KDCGFで始まるメッセージのFaultコードの接頭辞には，「{http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd}」が出力されます。ローカル部には，エラーの要因を示す文字列が出力されます。

Faultコードの値は，SOAP通信基盤のAPIを使用して取得できます。SOAP通信基盤が提供するAPIの仕様については，マニュアル「Cosminexus　SOAPアプリケーション開発ガイド」を参照してください。

FaultString

メッセージIDおよびメッセージの本文が出力されます。メッセージIDの見方については，「7.1　メッセージの形式」を参照してください。

FaultActor

Faultの生成者が出力されます。

FaultDetails

Faultの詳細が出力されます。

KDCGF0001-E

FaultCode：{http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd}UnsupportedSecurityToken
FaultString：KDCGF0001-E An unsupported security token was specified. (location = ＜発生場所＞)
FaultActor：なし
FaultDetails：なし

意味

<発生場所>でサポートされていないセキュリティトークン要素が使用されています。<発生場所>には次の内容が出力されます。

Server：サーバ側で受信したメッセージでエラーが発生した場合

Client：クライアント側で受信したメッセージでエラーが発生した場合

要因

次のうちのどれかがエラーの要因と考えられます。

BinarySecurityToken要素のEncodingType属性が指定されているにもかかわらず，属性値が「http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-soap-message-security-1.0#Base64Binary」ではない。

BinarySecurityToken要素のValueType属性が指定されているにもかかわらず，属性値が「http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-x509-token-profile-1.0#X509v3」ではない。

KeyIdentifier要素にEncodingType属性が指定されているにもかかわらず，属性値が「http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-soap-message-security-1.0#Base64Binary」ではない。

KeyIdentifier要素にValueType属性が指定されているにもかかわらず，属性値が「http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-x509-token-profile-1.0#X509SubjectKeyIdentifier」ではない。

WS-SecurityのReference要素にValueType属性が指定されているにもかかわらず，属性値が「http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-x509-token-profile-1.0#X509v3」ではない。

WS-SecurityのSecurityTokenReference要素の子要素に，Reference要素またはKeyIdentifier要素以外の要素が指定されている。

WS-SecurityのSecurity要素の子要素に，XML暗号のReference要素が指定されている。

対処

「要因」に示した内容に該当するSOAPメッセージを送信していないかどうか，メッセージの送信者に確認してください。

KDCGF0002-E

FaultCode：{http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd}UnsupportedAlgorithm
FaultString：KDCGF0002-E An unsupported signature or encryption algorithm was specified. (location = ＜発生場所＞)
FaultActor：なし
FaultDetails：なし

意味

<発生場所>でサポートされていない署名アルゴリズム，または暗号アルゴリズムが使用されています。<発生場所>には次の内容が出力されます。

Server：サーバ側で受信したメッセージでエラーが発生した場合

Client：クライアント側で受信したメッセージでエラーが発生した場合

要因

次のうちのどれかがエラーの要因と考えられます。

Canonicalization要素のAlgorithm属性にサポートされていないアルゴリズムが指定されている。

SignatureMethod要素のAlgorithm属性にサポートされていないアルゴリズムが指定されている。

Transform要素のAlgorithm属性にサポートされていないアルゴリズムが指定されている。

Canonicalization要素のAlgorithm属性にWebサービスセキュリティポリシー定義ファイルで設定されていないアルゴリズムが指定されている。

SignatureMethod要素のAlgorithm属性にWebサービスセキュリティポリシー定義ファイルに設定されていないアルゴリズムが指定されている。

Transform要素のAlgorithm属性にWebサービスセキュリティポリシー定義ファイルで設定されていないアルゴリズムが指定されている。

XML暗号のEncryptionMethod要素のAlgorithm属性にサポートされていないアルゴリズムが指定されている。

XML暗号のEncryptionMethod要素のAlgorithm属性にWebサービスセキュリティポリシー定義ファイルで設定されていないアルゴリズムが指定されている。

対処

「要因」に示した内容に該当するSOAPメッセージを送信していないかどうか，メッセージの送信者に確認してください。または，Webサービスセキュリティポリシー定義ファイルの設定を見直してください。

Webサービスセキュリティ機能がサポートしているアルゴリズムについては，「付録A　標準仕様への対応」を参照してください。Webサービスセキュリティポリシー定義ファイルの設定については，「付録C.2　Webサービスセキュリティポリシー定義ファイルの項目」を参照してください。

KDCGF0003-E

FaultCode：{http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd}InvalidSecurity
FaultString：KDCGF0003-E An error occurred during security header processing. (location = ＜発生場所＞)
FaultActor：なし
FaultDetails：なし

意味

<発生場所>のセキュリティヘッダ内でエラーが発生しました。<発生場所>には次の内容が出力されます。

Server：サーバ側で受信したメッセージでエラーが発生した場合

Client：クライアント側で受信したメッセージでエラーが発生した場合

要因

次のうちのどれかがエラーの要因と考えられます。

Webサービスセキュリティポリシー定義ファイルのTimestamp要素でCreated要素を要求する指定がされているにもかかわらず，受信したSOAPメッセージにCreated要素がない。

Webサービスセキュリティポリシー定義ファイルのTimestamp要素でExpires要素を要求する指定がされているにもかかわらず，受信したSOAPメッセージにExpires要素がない。

受信したSOAPメッセージのCreated要素およびExpires要素のValueType属性がxsd:dateTimeと異なる。

値が必要な要素（Created要素，Expires要素，BinarySecurityToken要素，KeyIdentifier要素）に値がない。

Webサービスセキュリティポリシー定義ファイルでBinarySecurityToken要素を要求する指定がされているにもかかわらず，受信したSOAPメッセージにBinarySecurityToken要素がない。

Reference要素にURI属性が付与されていない。

Reference要素のURI属性に値が設定されていない。

Webサービスセキュリティポリシー定義ファイルでSOAPボディに署名を要求する指定がされているにもかかわらず，受信したSOAPメッセージのSOAPボディに署名がない。

暗号化されたSOAPメッセージにKeyInfo要素がない。

暗号化されたSOAPメッセージのKeyName要素で示された鍵がWebサービスセキュリティ機能定義ファイルに記述されていない。

Webサービスセキュリティポリシー定義ファイルでSOAPボディの要素の暗号化を要求する指定がされているにもかかわらず，受信したSOAPメッセージのSOAPボディの要素が暗号化されていない。

受信したSOAPメッセージに同じ属性値を持つId属性がある。

Webサービスセキュリティポリシー定義ファイルのReceiverPortConfig要素のName属性とMy_role属性に対応したWebサービスセキュリティ機能定義ファイルの設定がありません。

対処

「要因」に示した内容に該当するSOAPメッセージを送信していないかどうか，メッセージの送信者に確認してください。または，Webサービスセキュリティポリシー定義ファイルの設定を見直してください。

Webサービスセキュリティ機能がサポートしているアルゴリズムについては，「付録A　標準仕様への対応」を参照してください。Webサービスセキュリティポリシー定義ファイルの設定については，「付録C.2　Webサービスセキュリティポリシー定義ファイルの項目」を参照してください。

KDCGF0004-E

FaultCode：{http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd}InvalidSecurityToken
FaultString：KDCGF0004-E An invalid security token was specified (location = ＜発生場所＞)
FaultActor：なし
FaultDetails：なし

意味

<発生場所>で不正なセキュリティトークンが使用されています。<発生場所>には次の内容が出力されます。

Server：サーバ側で受信したメッセージでエラーが発生した場合

Client：クライアント側で受信したメッセージでエラーが発生した場合

要因

次のうちのどちらかがエラーの要因と考えられます。

BinarySecurityToken要素のValueType属性が付与されていない。

受信したSOAPメッセージのBinarySecurityToken要素を，Webサービスセキュリティポリシー定義ファイルに記述された証明書ファイルで検証した場合に，常に検証が失敗する。

対処

「要因」に示した内容に該当するSOAPメッセージを送信していないかどうか，メッセージの送信者に確認してください。または，Webサービスセキュリティポリシー定義ファイルの設定を見直してください。

Webサービスセキュリティ機能がサポートしているアルゴリズムについては，「付録A　標準仕様への対応」を参照してください。Webサービスセキュリティポリシー定義ファイルの設定については，「付録C.2　Webサービスセキュリティポリシー定義ファイルの項目」を参照してください。

KDCGF0005-E

FaultCode：{http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd}FailedAuthentication
FaultString：KDCGF0005-E A security token could not be authenticated or authorized. (location = ＜発生場所＞)
FaultActor：なし
FaultDetails：なし

意味

<発生場所>のセキュリティトークンは，認証または認可できません。<発生場所>には次の内容が出力されます。

Server：サーバ側で受信したメッセージでエラーが発生した場合

Client：クライアント側で受信したメッセージでエラーが発生した場合

要因

KDCGJ0001-Eの要因を参照してください。

対処

KDCGJ0001-Eの対処を参照してください。

KDCGF0006-E

FaultCode：{http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd}FailedCheck
FaultString：KDCGF0006-E A signature or decryption was invalid. (location = ＜発生場所＞)
FaultActor：なし
FaultDetails：なし

意味

<発生場所>の署名または復号化が不正です。<発生場所>には次の内容が出力されます。

Server：サーバ側で受信したメッセージでエラーが発生した場合

Client：クライアント側で受信したメッセージでエラーが発生した場合

要因

次のうちのどちらかがエラーの要因と考えられます。

受信したSOAPメッセージに不正な署名が付与されている。

受信したSOAPメッセージが不正に暗号化されている。

対処

「要因」に示した内容に該当するSOAPメッセージを送信していないかどうか，メッセージの送信者に確認してください。

KDCGF0007-E

FaultCode：{http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd}SecurityTokenUnavailable
FaultString：KDCGF0007-E A referenced security token cannot be found. (location = ＜発生場所＞)
FaultActor：なし
FaultDetails：なし

意味

<発生場所>で受信したSOAPメッセージの中で，参照先で示されるセキュリティトークン要素が見つかりませんでした。<発生場所>には次の内容が出力されます。

Server：サーバ側で受信したメッセージでエラーが発生した場合

Client：クライアント側で受信したメッセージでエラーが発生した場合

要因

WS-SecurityのReference要素で指定されているBinarySecurityToken要素が見つかりません。

WS-SecurityのKeyIdentifier要素で指定されているサブジェクトキー識別子を持つX.509証明書がWebサービスセキュリティ機能定義ファイルのVerificationKeyStore要素で指定しているキーストアファイルの中から見つかりません。

対処

「要因」に示した内容に該当するSOAPメッセージを送信していないかどうか，メッセージの送信者に確認してください。

KDCGF0008-E

FaultCode：{http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd}MessageExpired
FaultString：KDCGF0008-E An old message or message with an expired date was received. (location = ＜発生場所＞)
FaultActor：なし
FaultDetails：なし

意味

＜発生場所＞で受信したSOAPメッセージが古いか，メッセージの有効期限が切れています。<発生場所>には次の内容が出力されます。

Server：サーバ側で受信したメッセージでエラーが発生した場合

Client：クライアント側で受信したメッセージでエラーが発生した場合

要因

次のうちのどちらかがエラーの要因と考えられます。

受信したSOAPメッセージのCreated要素の値が古い。

受信したSOAPメッセージのExpires要素で指定されている有効期限が過ぎている。

対処

「要因」に示した内容に該当するSOAPメッセージを送信していないかどうか，メッセージの送信者に確認してください。または，Webサービスセキュリティポリシー定義ファイルの設定を見直してください。

Webサービスセキュリティポリシー定義ファイルの設定については，「付録C.2　Webサービスセキュリティポリシー定義ファイルの項目」を参照してください。

KDCGF0009-E

FaultCode : {http://schemas.xmlsoap.org/soap/envelope/}MustUnderstand
FaultString : KDCGF0009-E Can not understand "MustUnderstand" header.(Header name = <ヘッダ名>, reason= <理由>)
FaultActor : なし
FaultDetail : なし

意味

mustUnderstand属性が付加されたヘッダ要素を解釈できません。

＜ヘッダ名＞および＜理由＞には，それぞれ次の内容が出力されます。

＜ヘッダ名＞
mustUnderstand属性が付加されたヘッダの名称が出力されます。

＜理由＞
解釈できない理由が出力されます。

要因

次の要因が考えられます。

アプリケーションがCosminexus Web Services - Security - バージョン0760を実装している場合
次のSecurity要素を受信しました。
・mustUnderstand属性が「true」である。
・名前空間の値がWeb Services Security: SOAP Message Security Working Draft 17である。

アプリケーションがCosminexus Web Services - Security - 旧バージョンを実装している場合
次のSecurity要素を受信しました。
・mustUnderstand属性が「true」である。
・名前空間の値がWeb Services Security: SOAP Message Security1.1である。

対処

アプリケーションがCosminexus Web Services - Security - バージョン0760を実装している場合
受信するSecurity要素の名前空間がWeb Services Security: SOAP Message Security1.1の名前空間になるように，メッセージ送信者に変更を依頼してください。

アプリケーションがCosminexus Web Services - Security - 旧バージョンを実装している場合
受信するSecurity要素の名前空間がWeb Services Security: SOAP Message Security Working Draft17の名前空間になるように，メッセージ送信者に変更を依頼してください。

KDCGF0010-E

FaultCode:{http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd} InvalidSecurity
FaultString : KDCGF0010-E The namespace <名前空間> of the Security header is illegal.
FaultActor : なし
FaultDetail : なし

意味

セキュリティヘッダの名前空間が不正です。＜名前空間＞には，次の内容が出力されます。

＜名前空間＞
不正な名前空間の名称が出力されます。

要因

次の要因が考えられます。

アプリケーションがCosminexus Web Services - Security - バージョン0760を実装している場合
次のSecurity要素を受信しました。
・mustUnderstand属性が「false」である。
・名前空間の値がWeb Services Security: SOAP Message Security Working Draft 17である。

アプリケーションがCosminexus Web Services - Security - 旧バージョンを実装している場合
次のSecurity要素を受信しました。
・mustUnderstand属性が「false」である。
・名前空間の値がWeb Services Security: SOAP Message Security1.1である。

対処

アプリケーションがCosminexus Web Services - Security - バージョン0760を実装している場合
受信するSecurity要素の名前空間がWeb Services Security: SOAP Message Security1.1の名前空間になるように，メッセージ送信者に変更を依頼してください。

アプリケーションがCosminexus Web Services - Security - 旧バージョンを実装している場合
受信するSecurity要素の名前空間がWeb Services Security: SOAP Message Security Working Draft17の名前空間になるように，メッセージ送信者に変更を依頼してください。

7.2.4　KDCGJで始まるメッセージ

KDCGJで始まるメッセージの意味，要因，および対処について説明します。

KDCGJ0001-E

An error occurred during JAAS authentication. (details = ＜詳細＞)

意味

JAAS認証でエラーが発生しました。

要因

次のうちのどれかがエラーの要因と考えられます。

Webサービスセキュリティ機能定義ファイルのUsername要素およびPassword要素の指定内容が間違っている。

Webサービスセキュリティ機能定義ファイルのPassword要素のType属性の指定値が間違っている。

LoginModule.login()メソッドの中の実装が間違っている。

LoginModule.login()メソッドでLoginExceptionをスローしている。

LoginModule.login()メソッドの戻り値を「false」にしている。※

JAASログインモジュールに必要なログイン構成ファイルがない。

Cosminexus Component Container のユーザー定義ファイル（usrconf.properties）で指定した場所にJAASログインモジュールに必要なログイン構成ファイルがない。

Cosminexus Component Container のユーザー定義ファイル（usrconf.properties）にJAASログインモジュールに必要なログイン構成ファイルが指定されていない。

ログイン構成ファイルの構文が間違っている。

ログイン構成ファイルのインデックス値とWebサービスセキュリティ機能定義ファイルで指定したインデックス値が異なる。

WSSUsernameTokenクラスのコンストラクタやsetUsernameメソッドなどで指定したユーザー名が間違っている。

WSSUsernameTokenクラスのsetPasswordメソッドで指定したパスワード値が間違っている。

WSSUsernameTokenクラスのsetPasswordTypeメソッドで指定したパスワード形式が間違っている。

注※

LoginModule.login()メソッドでLoginExceptionをスローしている場合，LoginException生成時に詳細メッセージを指定いるときは，<詳細>に詳細なエラー要因が出力されます。

対処

Webサービスセキュリティ機能定義ファイルを見直して，「要因」に示した間違いがないかどうかを確認してください。

JAASログインモジュールの処理が正しいかどうか，JAASログインモジュールの設計を見直してください。

JAASログインモジュールに必要なログイン構成ファイルの設定や格納場所などを見直してください。

WSSUsernameTokenクラスのメソッドの使用方法が正しいかどうか，SOAPアプリケーションの設計を見直してください。

Webサービスセキュリティ機能定義ファイルの要素や属性については，「付録C.1　Webサービスセキュリティ機能定義ファイルの項目」を参照してください。WSSUsernameTokenクラスのメソッドの使用方法については，「5.4　WSSUsernameTokenクラス（UsernameToken要素の操作）」を参照してください。JAASログインモジュールについては，「3.4　認証機能を設定する」を参照してください。ログイン構成ファイルについては，「3.9.4　JAASログインモジュールの実装時の注意」を参照してください。

なお，SOAPアプリケーションの設計の詳細については，マニュアル「Cosminexus　SOAPアプリケーション開発ガイド」を参照してください。

7.2.5　KDCGKで始まるメッセージ

KDCGKで始まるメッセージの意味，要因，および対処について説明します。

KDCGK0001-I

Generation of a secret key has finished. (file = ＜ファイル名＞)

意味

共通鍵の生成が完了しました。

<ファイル名>には，生成した共通鍵のファイル名が出力されます。

KDCGK0010-E

An argument is not specified. (argument = ＜引数＞)

意味

引数が指定されていません。

<引数>には，指定する必要がある引数の名称が出力されます。

要因

共通鍵生成コマンドで指定する必要がある引数が指定されていません。

対処

引数を指定してから，再度，共通鍵生成コマンドを実行してください。

共通鍵生成コマンドで指定する引数については，「4.1　共通鍵生成コマンド（CWSSCreateSecretKey）」を参照してください。

KDCGK0011-E

An invalid argument is specified. (argument = ＜引数＞)

意味

不正な引数が指定されています。

<引数>には，不正と判定された引数の名称が出力されます。

要因

共通鍵生成コマンドで使用できない，不正な引数が指定されています。

対処

不正と判定された引数を削除してから，再度，共通鍵生成コマンドを実行してください。

共通鍵生成コマンドで指定できる引数については，「4.1　共通鍵生成コマンド（CWSSCreateSecretKey）」を参照してください。

KDCGK0012-E

An invalid argument value is specified. (argument = ＜引数＞, value = ＜引数値＞)

意味

引数に不正な値が指定されています。

<引数>と<引数値>には，それぞれ次の内容が出力されます。

<引数>

引数の名称が出力されます。

<引数値>

引数に指定されている値が出力されます。

要因

共通鍵生成コマンドの引数に不正な値が指定されています。

対処

共通鍵生成コマンドの引数，および引数に指定されている値が正しいかどうかを確認してから，再度，共通鍵生成コマンドを実行してください。

共通鍵生成コマンドの引数に指定できる値については，「4.1　共通鍵生成コマンド（CWSSCreateSecretKey）」を参照してください。

KDCGK0013-E

A specified file already exists. (file = ＜ファイル名＞)

意味

指定した共通鍵のファイルはすでに存在します。

要因

共通鍵生成コマンドの-oオプションで指定したファイル名のファイルがすでに存在しています。

対処

すでに存在しているファイルとは異なるファイル名を指定して，再度，共通鍵生成コマンドを実行してください。

共通鍵生成コマンドで使用できるオプションについては，「4.1　共通鍵生成コマンド（CWSSCreateSecretKey）」を参照してください。

KDCGK0100-E

An error occurred during output of the key to a file. (details = ＜詳細＞)

意味

ファイルを出力するときにエラーが発生しました。

<詳細>には，エラー内容の詳細が出力されます。

要因

共通鍵生成コマンドで生成した共通鍵をファイルに出力するときにエラーが発生しました。

対処

<詳細>に表示されるエラーの要因を解決してから，再度，共通鍵生成コマンドを実行してください。<詳細>に表示されたエラーの要因がわからない場合は，システム管理者に連絡してください。

KDCGK0101-E

An error occurred during key creation. (details = ＜詳細＞)

意味

鍵を生成するときにエラーが発生しました。

<詳細>には，エラー内容の詳細が出力されます。

要因

共通鍵生成コマンドで共通鍵を生成するときにエラーが発生しました。

対処

<詳細>に表示されるエラーの要因を解決してから，再度，共通鍵生成コマンドを実行してください。<詳細>に表示されたエラーの要因がわからない場合は，システム管理者に連絡してください。

KDCGK9000-E

An unexpected error occurred during processing. (details = ＜詳細＞)

意味

処理中に予期しないエラーが発生しました。

<詳細>には，エラー内容の詳細が出力されます。

要因

共通鍵生成コマンドを実行中に原因不明のエラーが発生しました。

対処

システム管理者に連絡してください。

7.2.6　KDCGOで始まるメッセージ

KDCGOで始まるメッセージの意味，要因，および対処について説明します。

KDCGO0001-I

Validation has finished.

意味

定義ファイルの構文チェックが正常に終了しました。

KDCGO0002-E

Validation has failed.

意味

定義ファイルの構文に誤りがあります。

要因

Webサービスセキュリティ機能定義ファイルまたはWebサービスセキュリティポリシー定義ファイルの内容に誤りがあります。

対処

このメッセージの直前に出力されるメッセージの内容に従って，Webサービスセキュリティ機能定義ファイルまたはWebサービスセキュリティポリシー定義ファイルを修正してから，再度，定義ファイル構文チェックコマンドを実行してください。

KDCGO0010-E

An argument is not specified. (argument = ＜引数＞)

意味

引数が指定されていません。

<引数>には，指定する必要がある引数の名称が出力されます。

要因

定義ファイル構文チェックコマンドで指定する必要がある引数が指定されていません。

対処

引数を指定してから，再度，定義ファイル構文チェックコマンドを実行してください。

定義ファイル構文チェックコマンドで指定する引数については，「4.2　定義ファイル構文チェックコマンド（CWSSConfCheck）」を参照してください。

KDCGO0011-E

An invalid argument was specified. (argument = ＜引数＞)

意味

不正な引数が指定されています。

<引数>には，不正と判定された引数の名称が出力されます。

要因

定義ファイル構文チェックコマンドで使用できない，不正な引数が指定されています。

対処

不正と判定された引数を削除してから，再度，定義ファイル構文チェックコマンドを実行してください。

定義ファイル構文チェックコマンドで指定できる引数については，「4.2　定義ファイル構文チェックコマンド（CWSSConfCheck）」を参照してください。

KDCGO0012-E

An invalid argument value was specified. (argument = ＜引数＞, value = ＜引数値＞)

意味

引数に不正な値が指定されています。

<引数>と<引数値>には，それぞれ次の内容が出力されます。

<引数>

引数の名称が出力されます。

<引数値>

引数に指定されている値が出力されます。

要因

定義ファイル構文チェックコマンドの引数に不正な値が指定されています。

対処

定義ファイル構文チェックコマンドの引数，および引数に指定されている値が正しいかどうかを確認してから，再度，定義ファイル構文チェックコマンドを実行してください。

定義ファイル構文チェックコマンドの引数に指定できる値については，「4.2　定義ファイル構文チェックコマンド（CWSSConfCheck）」を参照してください。

KDCGO9000-E

An unexpected error occurred during processing. (details = ＜詳細＞)

意味

処理中に予期しないエラーが発生しました。

<詳細>には，エラー内容の詳細が出力されます。

要因

定義ファイル構文チェックコマンドを実行中に原因不明のエラーが発生しました。

対処

システム管理者に連絡してください。

7.2.7　KDCGPで始まるメッセージ

KDCGPで始まるメッセージの意味，要因，および対処について説明します。

KDCGP0001-E

A definition is duplicated. (Name = ＜Name属性値＞, My_role = ＜My_role属性値＞)

意味

Name属性およびMy_role属性の値が重複して定義されています。

要因

Webサービスセキュリティポリシー定義ファイル内で，Name属性およびMy_role属性に同じ値を指定したReceiverPortConfig要素が複数定義されています。

対処

複数あるReceiverPortConfig要素のName属性値およびMy_role属性値が重複しないように，Webサービスセキュリティポリシー定義ファイルを修正してください。

KDCGP0002-E

An error occurred during reading of an X509 certificate. (details = ＜詳細＞)

意味

X.509証明書を読み込むときにエラーが発生しました。

<詳細>には，エラー内容の詳細が出力されます。

要因

Webサービスセキュリティポリシー定義ファイルのAuthorityCertificateFile要素のName属性値に指定したX.509証明書ファイルの読み込むときに，エラーが発生しました。次のうちのどれかがエラーの要因と考えられます。

AuthorityCertificateFile要素のName属性で指定したX.509証明書ファイルが見つからない。

AuthorityCertificateFile要素のName属性で指定したX.509証明書ファイルに対するアクセス権限がない。

AuthorityCertificateFile要素のName属性で指定したX.509証明書ファイルの形式が間違っている。

対処

「要因」に示した問題点がないかどうか，Webサービスセキュリティポリシー定義ファイルの設定を見直してください。

Webサービスセキュリティポリシー定義ファイルの設定については，「付録C.2　Webサービスセキュリティポリシー定義ファイルの項目」を参照してください。

KDCGP1001-E

The root tag name is invalid. (tag name = ＜要素名＞)

意味

不正なルート要素名が指定されています。

<要素名>には，ルート要素の名称が出力されます。

要因

Webサービスセキュリティポリシー定義ファイルに不正なルート要素名が指定されています。

対処

Webサービスセキュリティポリシー定義ファイルのルート要素の名称を「PolicyConfig」に修正してください。

KDCGP1002-E

A tag name is invalid. (parent tag name = ＜親要素名＞, tag name = ＜要素名＞)

意味

不正な名称の要素が指定されています。

<親要素名>と<要素名>には，それぞれ次の内容が出力されます。

<親要素名>

不正な名称が指定されている要素の親要素の名称が出力されます。

<要素名>

不正な名称が指定されている要素の名称が出力されます。

要因

Webサービスセキュリティポリシー定義ファイルの要素のうち，名称が不正な要素があります。

対処

Webサービスセキュリティポリシー定義ファイルを修正してください。

Webサービスセキュリティポリシー定義ファイルで指定できる要素の名称については，「付録C.2　Webサービスセキュリティポリシー定義ファイルの項目」を参照してください。

KDCGP1003-E

An attribute value is invalid. (tag name = ＜要素名＞, attribute name = <属性名>, attribute value = ＜属性値＞)

意味

不正な属性が指定されています。

<要素名>，<属性名>，および<属性値>には，それぞれ次の内容が出力されます。

<要素名>

不正な属性が指定されている要素の名称が出力されます。

<属性名>

不正な値が指定されている属性の名称が出力されます。

<属性値>

<属性名>で示された属性に指定されている値が出力されます。

要因

Webサービスセキュリティポリシー定義ファイルの要素のうち，属性値の値が不正な要素があります。

対処

Webサービスセキュリティポリシー定義ファイルを修正してください。

Webサービスセキュリティポリシー定義ファイルの属性に指定できる値については，「付録C.2　Webサービスセキュリティポリシー定義ファイルの項目」を参照してください。

KDCGP1004-E

＜要素名＞ is undefined.

意味

定義されていない要素があります。

<要素名>には，定義されていない要素の名称が出力されます。

要因

Webサービスセキュリティポリシー定義ファイルの必須要素のうち，定義されていない要素があります。

対処

Webサービスセキュリティポリシー定義ファイルを修正してください。

Webサービスセキュリティポリシー定義ファイルの属性に指定できる値については，「付録C.2　Webサービスセキュリティポリシー定義ファイルの項目」を参照してください。

KDCGP9000-E

An unexpected exception occurred. (details = ＜詳細＞)

意味

予期しない例外が発生しました。

<詳細>には，例外の内容の詳細が出力されます。

要因

Webサービスセキュリティポリシー定義ファイルを解析するときにエラーが発生しました。

対処

<詳細>に表示される例外の要因を解決してから，再度，処理を実行してください。<詳細>に表示された例外の要因がわからない場合は，システム管理者に連絡してください。

7.2.8　KDCGSで始まるメッセージ

KDCGSで始まるメッセージの意味，要因，および対処について説明します。

KDCGS0001-E

For ＜要素名＞, specify either ＜子要素名1または属性名1＞ or ＜子要素名2または属性名2＞.

意味

<要素名>には，＜子要素名1または属性名1＞または＜子要素名2または属性名2＞を指定してください。

<要素名>，<子要素名>，および<属性名>には，それぞれ次の内容が出力されます。

<要素名>

どちらか一方だけを指定する必要がある子要素または属性が，両方指定されている要素の名称が出力されます。

<子要素名>

子要素の名称が出力されます。

<属性名>

属性の名称が出力されます。

要因

Webサービスセキュリティ機能定義ファイルの要素のうち，子要素または属性の指定が間違っているものがあります。次のうちのどちらかがエラーの要因と考えられます。

<子要素名1>または<子要素名2>のどちらか一方だけを指定する必要があるにもかかわらず，両方の子要素が指定されている。

<属性名1>または<属性名2>のどちらか一方だけを指定する必要があるにもかかわらず，両方の属性が指定されている。

対処

Webサービスセキュリティ機能定義ファイルを修正して，<要素名>の<子要素名1>または<子要素2>のどちらか一方を指定するか，<属性名1>または<属性名2>のどちらか一方を指定するようにしてください。

Webサービスセキュリティ機能定義ファイルの要素や属性の指定回数については，「付録C.1　Webサービスセキュリティ機能定義ファイルの項目」を参照してください。

KDCGS0004-E

An attribute value reference is invalid. (tag name = ＜要素名＞, attribute name = ＜属性名＞)

意味

属性で指定された参照先が不正です。

<要素名>および<属性名>には，それぞれ次の内容が出力されます。

<要素名>

参照先が不正な属性を持つ要素の名称が出力されます。

<属性名>

参照先が不正な属性の名称が出力されます。

要因

Webサービスセキュリティ機能定義ファイルの属性のうち，参照先が間違っているものがあります。次のうちのどちらかがエラーの要因と考えられます。

IdRef属性の値が対応するId属性の値と一致していない。

IdRef属性に異なる要素のId属性の値が指定されている。

対処

Webサービスセキュリティ機能定義ファイルを修正して，<要素名>のIdRef属性に正しい値を指定してください。

Webサービスセキュリティ機能定義ファイルのIdRef属性に指定する値については，「付録C.1　Webサービスセキュリティ機能定義ファイルの項目」を参照してください。

KDCGS0005-E

A URI or TargetId attribute value must start with #. (tag name = ＜要素名＞, attribute name = ＜属性名＞)

意味

URI属性またはTargetId属性の先頭は「＃」でなければなりません。

<要素名>および<属性名>には，それぞれ次の内容が出力されます。

<要素名>

指定されている値の先頭が「＃」ではない属性を持つ要素の名称が出力されます。

<属性名>

指定されている値の先頭が「＃」ではない属性の名称が出力されます。

要因

Webサービスセキュリティ機能定義ファイルの属性のうち，指定されている値の先頭が「＃」ではない属性があります。

対処

Webサービスセキュリティ機能定義ファイルを修正して，<属性名>の属性に指定する値の先頭に「#」を付けてください。

Webサービスセキュリティ機能定義ファイルの属性に指定する値については，「付録C.1　Webサービスセキュリティ機能定義ファイルの項目」を参照してください。

KDCGS0007-E

The specified secret key file does not match the KeyType attribute. (secret key file = ＜共通鍵ファイル名＞, KeyType = ＜アルゴリズム識別子＞)

意味

共通鍵のファイルとkeytype属性での指定が一致しません。

<共通鍵ファイル名>および<アルゴリズム識別子>には，それぞれ次の内容が出力されます。

<共通鍵ファイル名>

共通鍵のファイル名が出力されます。

<アルゴリズム識別子>

keytype属性で指定されたアルゴリズム識別子が出力されます。

要因

Webサービスセキュリティ機能定義ファイルのSecretKeyFile要素のkeytype属性に指定したアルゴリズム識別子と，共通鍵ファイルの内容が異なっています。

対処

Webサービスセキュリティ機能定義ファイルを修正して，SecretKeyFile要素のkeytype属性と共通鍵ファイルの内容が同じになるようにしてください。keytype属性には，共通鍵生成コマンドの引数で指定したアルゴリズム識別子と同じものを指定する必要があります。

Webサービスセキュリティ機能定義ファイルのSecretKeyFile要素のkeytype属性に指定する値については，「付録C.1　Webサービスセキュリティ機能定義ファイルの項目」を参照してください。共通鍵生成コマンドについては，「4.1　共通鍵生成コマンド（CWSSCreateSecretKey）」を参照してください。

KDCGS0008-E

An error occurred during creation of a secret key. (details = ＜詳細＞)

意味

共通鍵を生成するときにエラーが発生しました。

<詳細>には，エラー内容の詳細が出力されます。

要因

Webサービスセキュリティ機能定義ファイルのSecretKeyFile要素に指定した共通鍵ファイルから共通鍵を生成するときにエラーが発生しました。次のうちのどちらかがエラーの要因と考えられます。

SecretKeyFile要素の指定が間違っている。

実行環境の設定が間違っている。

対処

<詳細>の内容に従って，Webサービスセキュリティ機能定義ファイルの設定または実行環境を見直してください。

KDCGS0009-E

The EmbedId attribute value is duplicated.

意味

EmbedId属性の値が重複しています。

要因

Webサービスセキュリティ機能定義ファイルのEmbedId属性に指定した値が重複しています。

対処

Webサービスセキュリティ機能定義ファイルを修正して，EmbedId属性の値が重複しないようにしてください。

Webサービスセキュリティ機能定義ファイルのEmbedId属性に指定する値については，「付録C.1　Webサービスセキュリティ機能定義ファイルの項目」を参照してください。

KDCGS0010-E

<要素名> does not exist.

意味

要素が存在しません。

<要素名>には，見つからなかった要素の名称が出力されます。

要因

SOAPサービスのURLとWebサービスセキュリティ機能定義ファイルのReceiverPortConfig要素のName属性に指定した値が一致していません。

対処

Webサービスセキュリティ機能定義ファイルのReceiverPortConfig要素のName属性に指定した値がSOAPサービスのURLと一致しているかどうか確認してください。

Webサービスセキュリティ機能定義ファイルのReceiverPortConfig要素のName属性に指定する値については，「付録C.1　Webサービスセキュリティ機能定義ファイルの項目」を参照してください。

KDCGS0011-E

Content for ＜要素名＞ is required.

意味

<要素名>の内容を指定する必要があります。

<要素名>には，内容が指定されていない要素の名称が出力されます。

要因

Webサービスセキュリティ機能定義ファイルのうち，要素の内容を指定する必要があるにもかかわらず，内容が指定されていない要素があります。

対処

Webサービスセキュリティ機能定義ファイルを修正して，<要素名>の内容を指定してください。

Webサービスセキュリティ機能定義ファイルで指定する要素については，「付録C.1　Webサービスセキュリティ機能定義ファイルの項目」を参照してください。

KDCGS0012-E

A definition is duplicated. (Name = ＜Name属性値＞)

意味

Name属性の指定が重複しています。

<Name属性値>には，Webサービスセキュリティ機能定義ファイルのSenderPortConfig要素のName属性に指定されている内容が出力されます。

要因

Webサービスセキュリティ機能定義ファイルのSenderPortConfig要素のうち，Name属性に同じ値を指定したものが複数あります。

対処

Webサービスセキュリティ機能定義ファイルを修正して，SenderPortConfig要素のName属性の値が重複しないようにください。

Webサービスセキュリティ機能定義ファイルで指定する要素および属性については，「付録C.1　Webサービスセキュリティ機能定義ファイルの項目」を参照してください。

KDCGS0013-E

A definition is duplicated. (Name = ＜Name属性値＞, My_role = ＜My_role属性値＞)

意味

Name属性とMy_role属性の値が重複しています。＜Name属性値＞および＜My_role属性値＞には，Webサービスセキュリティ機能定義ファイルのReceiverPortConfig要素の各属性に指定されている内容が出力されます。

要因

Webサービスセキュリティ機能定義ファイルのReceiverPortConfig要素のうち，Name属性とMy_role属性に同じ値を指定したものが複数あります。

対処

Webサービスセキュリティ機能定義ファイルを修正して，ReceiverPortConfig要素のName属性とMy_role属性の値が重複しないようにください。

Webサービスセキュリティ機能定義ファイルで指定する要素および属性については，「付録C.1　Webサービスセキュリティ機能定義ファイルの項目」を参照してください。

KDCGS0014-E

An error occurred during reading of a KeyStore. (details = ＜詳細＞)

意味

キーストアの読み込み中にエラーが発生しました。＜詳細＞には，エラーの詳細な内容が出力されます。

要因

Webサービスセキュリティ機能定義ファイルのKeyStore要素のFile属性に指定したキーストアファイルの読み込みでエラーが発生しました。指定したキーストアファイルが存在しなかったり，ファイルに対するアクセス権がなかったり，ファイルの形式が間違っているおそれがあります。

対処

＜詳細＞の内容に従って，Webサービスセキュリティ機能定義ファイルのKeyStore要素のFile属性の指定を見直してください。

Webサービスセキュリティ機能定義ファイルで指定する要素および属性については，「付録C.1　Webサービスセキュリティ機能定義ファイルの項目」を参照してください。

KDCGS0015-E

A definition is duplicated. (tag name = <要素名>)

意味

要素が重複しています。＜要素名＞には，重複している要素の名称が出力されます。

要因

Webサービスセキュリティ機能定義ファイルの中で，1回しか指定できない＜要素名＞を複数回指定しています。

対処

Webサービスセキュリティ機能定義ファイルを修正して，＜要素名＞を1回だけ指定するようにしてください。

Webサービスセキュリティ機能定義ファイルで指定する要素の指定回数については，「付録C.1　Webサービスセキュリティ機能定義ファイルの項目」を参照してください。

KDCGS1002-E

A tag name is invalid. (parent tag name = ＜親要素名＞, tag name = ＜要素名＞)

意味

不正な名称の要素があります。

<親要素名>および<要素名>には，それぞれ次の内容が出力されます。

<親要素名>

名称が不正な要素の親要素の名称が出力されます。

<要素名>

名称が不正な要素の名称が出力されます。

要因

Webサービスセキュリティ機能定義ファイルの要素のうち，名称が不正なものがあります。

対処

Webサービスセキュリティ機能定義ファイルの<要素名>を修正してください。

Webサービスセキュリティ機能定義ファイルで指定する要素については，「付録C.1　Webサービスセキュリティ機能定義ファイルの項目」を参照してください。

KDCGS1003-E

An attribute value is invalid. (tag name = ＜要素名＞, attribute name = ＜属性名＞, attribute value = ＜属性値＞)

意味

属性に指定されている値が不正です。

<要素名>，<属性名>，および<属性値>には，それぞれ次の内容が出力されます。

<要素名>

不正な値が指定されている属性を持つ要素の名称が出力されます。

<属性名>

不正な値が指定されている属性の名称が出力されます。

<属性値>

<属性名>に指定されている値が出力されます。

要因

Webサービスセキュリティ機能定義ファイルの属性のうち，指定された値が不正なものがあります。

対処

Webサービスセキュリティ機能定義ファイルの<属性値>に指定する値を修正してください。

Webサービスセキュリティ機能定義ファイルの属性に指定する値については，「付録C.1　Webサービスセキュリティ機能定義ファイルの項目」を参照してください。

KDCGS9000-E

An unexpected exception occurred. (details = ＜詳細＞)

意味

予期しない例外が発生しました。

<詳細>には，例外の内容の詳細が出力されます。

要因

Webサービスセキュリティ機能定義ファイルを解析するときにエラーが発生しました。

対処

<詳細>に表示される例外の要因を解決してから，再度，処理を実行してください。<詳細>に表示された例外の要因がわからない場合は，システム管理者に連絡してください。

7.2.9　KDCGWで始まるメッセージ

KDCGWで始まるメッセージの意味，要因，および対処について説明します。KDCGWで始まるメッセージは，SOAPFault形式で出力されます。SOAPFault形式のメッセージには，次に示す四つの項目があります。

FaultCode

Faultコードが出力されます。Faultコードは，接頭辞とローカル部で構成されます。KDCGWで始まるメッセージのFaultコードの接頭辞には，「{http://www.hitachi.co.jp/soft/xml/cosminexus/ws/security/0760/faultcode}」が出力されます。ローカル部には，エラーの要因を示す文字列が出力されます。

Faultコードの値は，SOAP通信基盤のAPIを使用して取得できます。SOAP通信基盤が提供するAPIの仕様については，マニュアル「Cosminexus　SOAPアプリケーション開発ガイド」を参照してください。

FaultString

メッセージIDおよびメッセージの本文が出力されます。メッセージIDの見方については，「7.1　メッセージの形式」を参照してください。

FaultActor

Faultの生成者が出力されます。

FaultDetails

Faultの詳細が出力されます。

KDCGW0001-E

FaultCode：{http://www.hitachi.co.jp/soft/xml/cosminexus/ws/security/0760/faultcode} <Server.ConfigErrorまたはClient.ConfigError>
FaultString：KDCGW0001-E An error occurred during configuration file initialization. (file = ＜ファイル名＞, details = ＜詳細＞)
FaultActor：なし
FaultDetails：なし

意味

Webサービスセキュリティ機能定義ファイルまたはWebサービスセキュリティポリシー定義ファイルを初期化するときにエラーが発生しました。

<Server.ConfigErrorまたはClient.ConfigError>，<ファイル名>，および<詳細>には，それぞれ次の内容が出力されます。

<Server.ConfigErrorまたはClient.ConfigError>

エラーがサーバ側で発生したのか，クライアント側で発生したのかを示す文字列が出力されます。サーバ側でエラーが発生している場合は「Server.ConfigError」が，クライアント側でエラーが発生している場合は「Client.ConfigError」が出力されます。

<ファイル名>

Webサービスセキュリティ機能定義ファイルまたはWebサービスセキュリティポリシー定義ファイルのファイル名が出力されます。ファイル名については，「3.1　定義ファイルの設定」を参照してください。

<詳細>

KDCGC，KDCGP，またはKDCGSで始まるメッセージの本文が出力されます。KDCGC，で始まるメッセージについては，「7.2.2　KDCGCで始まるメッセージ」を参照してください。KDCGPで始まるメッセージについては，「7.2.7　KDCGPで始まるメッセージ」を参照してください。KDCGSで始まるメッセージについては，「7.2.8　KDCGSで始まるメッセージ」を参照してください。

要因

Webサービスセキュリティ機能定義ファイルまたはWebサービスセキュリティポリシー定義ファイルが初期化できませんでした。

対処

＜詳細＞の内容に従って，Webサービスセキュリティ機能定義ファイルまたはWebサービスセキュリティポリシー定義ファイルを修正し，再度，処理を実行してください。処理を再度実行する場合は，SOAPアプリケーションも再度デプロイする必要があります。

KDCGW0002-E

FaultCode：{http://www.hitachi.co.jp/soft/xml/cosminexus/ws/security/0760/faultcode}＜Server.SigningErrorまたはClient.SigningError＞
FaultString：KDCGW0002-E An error occurred during message signature processing. (details = ＜詳細＞)
FaultActor：なし
FaultDetails：なし

意味

メッセージの署名を処理するときにエラーが発生しました。

＜Server.SigningErrorまたはClient.SigningError＞および<詳細>には，それぞれ次の内容が出力されます。

＜Server.SigningErrorまたはClient.SigningError＞

エラーがサーバ側で発生したのか，クライアント側で発生したのかを示す文字列が出力されます。サーバ側でエラーが発生している場合は「Server.SigningError」が，クライアント側でエラーが発生している場合は「Client.SigningError」が出力されます。

<詳細>

エラーの詳細が出力されます。

要因

次のうちのどちらかが要因と考えられます。

Webサービスセキュリティ機能定義ファイルのCanonicalizationMethod要素，SignatureMethod要素，またはTransform要素で指定したアルゴリズムが間違っている。

Webサービスセキュリティ機能定義ファイルのSignatureTarget要素で指定した署名対象が間違っている。

対処

<詳細>に表示されるエラーの要因を解決してから，再度，処理を実行してください。<詳細>に表示されたエラーの要因がわからない場合は，システム管理者に連絡してください。

Webサービスセキュリティ機能定義ファイルの要素で指定する内容については，「付録C.1　Webサービスセキュリティ機能定義ファイルの項目」を参照してください。

KDCGW0003-E

FaultCode：{http://www.hitachi.co.jp/soft/xml/cosminexus/ws/security/0760/faultcode}＜Server.EncryptingErrorまたはClient.EncryptingError＞
FaultString：KDCGW0003-E An error occurred during message encryption. (details = ＜詳細＞)
FaultActor：なし
FaultDetails：なし

意味

メッセージの暗号化を処理するときにエラーが発生しました。

＜Server.EncryptingErrorまたはClient.EncryptingError＞および<詳細>には，それぞれ次の内容が出力されます。

＜Server.EncryptingErrorまたはClient.EncryptingError＞

エラーがサーバ側で発生したのか，クライアント側で発生したのかを示す文字列が出力されます。サーバ側でエラーが発生している場合は「Server.EncryptingError」が，クライアント側でエラーが発生している場合は「Client.EncryptingError」が出力されます。

<詳細>

エラーの詳細が出力されます。

要因

次のうちのどちらかが要因と考えられます。

Webサービスセキュリティ機能定義ファイルのContentsEncryption要素またはKeyEncryption要素の子要素であるEncryptionMethod要素で指定したアルゴリズムが間違っている。

Webサービスセキュリティ機能定義ファイルのEncryptionTarget要素で指定した暗号化対象が間違っている。

対処

<詳細>に表示されるエラーの要因を解決してから，再度，処理を実行してください。<詳細>に表示されたエラーの要因がわからない場合は，システム管理者に連絡してください。

Webサービスセキュリティ機能定義ファイルの要素で指定する内容については，「付録C.1　Webサービスセキュリティ機能定義ファイルの項目」を参照してください。

KDCGW9000-E

FaultCode：{http://www.hitachi.co.jp/soft/xml/cosminexus/ws/security/0760/faultcode}＜Server.ConfigErrorまたはClient.ConfigError＞
FaultString：KDCGW9000-E An unexpected error occurred during message transmission processing. (details = ＜詳細＞)
FaultActor：なし
FaultDetails：なし

意味

メッセージ送信中に予期しないエラーが発生しました。

＜Server.ConfigErrorまたはClient.ConfigError＞および<詳細>には，それぞれ次の内容が出力されます。

＜Server.ConfigErrorまたはClient.ConfigError＞

エラーがサーバ側で発生したのか，クライアント側で発生したのかを示す文字列が出力されます。サーバ側でエラーが発生している場合は「Server.ConfigError」が，クライアント側でエラーが発生している場合は「Client.ConfigError」が出力されます。

<詳細>

エラーの詳細が出力されます。

要因

メッセージ送信中に原因不明のエラーが発生しました。

対処

＜詳細＞の内容に従って，エラーの要因を解決してから，再度メッセージを送信してください。<詳細>に表示されたエラーの要因がわからない場合は，システム管理者に連絡してください。再度メッセージを送信する場合は，SOAPアプリケーションも再度デプロイする必要があります。

付録

＜この付録の構成＞

付録A　標準仕様への対応

付録B　下位バージョンからの移行手順

付録C　定義ファイルの項目の詳細

付録D　用語解説

付録A　標準仕様への対応

Webサービスセキュリティ機能は，次の仕様に従っています。

WS-Security仕様

07-60以降のバージョン
Web Services Security: SOAP Message Security 1.1

07-60より前のバージョン
Web Services Security: SOAP Message Security Working Draft 17

XML署名標準仕様（2002/2/12　W3C勧告）

XML暗号標準仕様（2002/12/10　W3C勧告）

WS-Security仕様の詳細については，OASISのホームページを参照してください。また，XML署名およびXML暗号の標準仕様の詳細については，W3Cのホームページを参照してください。ここでは，各仕様のうち，Webサービスセキュリティ機能がサポートしている範囲を説明します。

注意事項

07-60以降のバージョンでは，Web Services Security: SOAP Message Security 1.1 以外の仕様を実装した他社製品とは接続できない可能性があります。

07-60より前のバージョンでは，Web Services Security: SOAP Message Security Working Draft 17 以外の仕様を実装した他社製品とは接続できない可能性があります。

＜この節の構成＞

付録A.1　WS-Security仕様のサポート範囲

付録A.2　XML署名標準仕様のサポート範囲

付録A.3　XML暗号標準仕様のサポート範囲

付録A.1　WS-Security仕様のサポート範囲

Webサービスセキュリティ機能がサポートするWS-Security仕様の範囲を次の表に示します。

表A-1　WS-Security仕様のサポート範囲

項番
WS-Security仕様
推奨
レベル
サポートの有無

大分類
中分類
小分類

1
SecurityToken
UsernameToken
PasswordText
推奨
○

2
PasswordDigest
推奨
○

3
Nonce
推奨
○

4
Created
任意
○

5
BinarySecurityToken
X.509v3
任意
○

6
X509PKIPathv1
任意
×

7
PKCS7
任意
×

8
Kerberos5TGT
任意
×

9
Kerberos5ST
任意
×

10
SAML Assertion
－
任意
×

11
XrML
－
任意
×

12
XCBF
－
任意
×

13
EncryptedData Token
－
任意
×

14
TokenReference
Direct Reference
－
推奨
○

15
KeyIdentifiers
－
推奨
○

16
Embedded Reference
－
任意
×

17
KeyNames
－
任意
×

18
ds:KeyInfo
－
推奨
○

19
Encrypted Key Reference
－
任意
×

20
Signature
Algorithms
－
推奨
○

21
Signing Messages
－
必須
○

22
Signing Tokens
－
任意
△※

23
Signature Validation
－
必須
○

24
Signature Confirmation
－
任意
×

25
Encryption
xenc:ReferenceList
－
推奨
×

26
xenc:EncryptedKey
－
推奨
○

27
Encrypted Header
－
任意
×

28
Processing Rules
－
必須
○

29
Security TimeStamp
－
－
推奨
○

30
Error Handling
－
－
推奨
○

（凡例）

○：サポートあり

×：サポートなし

－：該当しない

注※

SecurityToken要素を直接署名できますが，STR Transformを非サポートのため，SecurityTokenReference要素を署名できません。

付録A.2　XML署名標準仕様のサポート範囲

Webサービスセキュリティ機能がサポートするXML署名標準仕様の範囲を次の表に示します。

表A-2　XML署名標準仕様のサポート範囲

項番
役割
項目
推奨レベル
サポートの
有無

1
ダイジェスト値計算
SHA1
必須
○

2
符号化
base64（エンコード）
必須
○

3
署名値計算
HMAC-SHA1
必須
×

4
DSAwithSHA1
必須
○

5
RSAwithSHA1
推奨
○

6
正規化処理
Canonical XML（コメント付き）
推奨
○

7
Canonical XML（コメントなし）
必須
○

8
Exclusive Canonical XML（コメント付き）
任意
○

9
Exclusive Canonical XML（コメントなし）
任意※1
○

10
変換処理
Canonical XML（コメント付き）
推奨
○

11
Canonical XML（コメントなし）
必須
○

12
Exclusive Canonical XML（コメント付き）
任意
○

13
Exclusive Canonical XML（コメントなし）
任意※1
○

14
base64（変換アルゴリズム）
必須
×

15
XSLT
任意
×

16
XPath
推奨
×

17
XPath Filter 2.0
任意
×

18
Enveloped Signature
必須
×

19
STR Dereference※2
推奨
×

（凡例）

○：サポートあり

×：サポートなし

注※1

WS-Security仕様では，サポートを推奨しています。

注※2

XML署名標準仕様で規定されている変換処理ではなく，WS-Security仕様で規定されているものです。

付録A.3　XML暗号標準仕様のサポート範囲

Webサービスセキュリティ機能がサポートするXML暗号標準仕様の範囲を次の表に示します。

表A-3　XML暗号標準仕様のサポート範囲

項番 | 項目 | 推奨レベル | サポートの有無
1 | Triple DES | 必須 | ○
2 | AES-128 | 必須 | ○
3 | AES-192 | 任意 | ×
4 | AES-256 | 必須 | ×
5 | RSA-v1.5 | 必須 | ×
6 | RSA-OAEP | 必須 | ×
7 | Diffie-Hellman Key Values | 任意 | ×
8 | Diffie-Hellman Key Agreement | 任意 | ×
9 | TRIPLEDES鍵ラッピング | 必須 | ○
10 | AES-128鍵ラッピング（128bit鍵） | 必須 | ○
11 | AES-192鍵ラッピング | 任意 | ×
12 | AES-256鍵ラッピング（256bit鍵） | 必須 | ×
13 | XML Decryption Transformation | 推奨※ | ×

（凡例）

○：サポートあり

×：サポートなし

注※

WS-Security仕様で規定されている推奨レベルです。

付録B　下位バージョンからの移行手順

旧バージョンからバージョン07-60以降に移行する手順について説明します。旧バージョンで作成したユーザプログラムと07-60以降で作成したユーザプログラムは，相互に接続できません。接続した場合は，例外が発生します。なお，旧バージョンで作成したユーザプログラムは，再コンパイルしないで，07-60以降で実行できます。

＜この節の構成＞

(1)　サーバ側の移行手順

(2)　クライアント側がWebアプリケーションの場合の移行手順

(3)　クライアント側がコマンドラインJavaアプリケーションの場合の移行手順

(1)　サーバ側の移行手順

旧バージョンから07-60に移行するには，通常の実装手順に加えて，定義ファイルを編集する必要があります。

Webサービスセキュリティ機能をサーバ側で移行する手順を次の図に示します。

図B-1　サーバ側の移行手順

ここでは，定義ファイルの編集方法について説明します。定義ファイルの編集以外の手順については，「3.9.1　サーバ側の実装手順」を参照してください。

(a)　定義ファイルを編集する

旧バージョンから07-60に移行するには，次の2種類の定義ファイルを編集します。

機能定義ファイル（security-config.xml）

ポリシー定義ファイル（policy-config.xml）

定義ファイルの編集手順を次に示します。

各定義ファイルのデフォルト名前空間を次のように変更します。

機能定義ファイル

http://www.hitachi.co.jp/soft/xml/cosminexus/ws/security/0760/securityconfig

ポリシー定義ファイル

http://www.hitachi.co.jp/soft/xml/cosminexus/ws/security/0760/policyconfig

機能定義ファイルおよびポリシー定義ファイルのプレフィックスwsse，wsuに対応する名前空間を次のように変更します。

wsse

http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd

wsu

http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd

各定義ファイルについて，次に示すXML要素を変更します。

機能定義ファイル

BinarySecurityTokenConfig要素
BinarySecurityTokenConfig要素の詳細については，「表C-12　BinarySecurityTokenConfig」を参照してください。

KeyIdentifier要素
KeyIdentifier要素の詳細については，「表C-24　KeyIdentifier」を参照してください。

Password要素
Password要素の詳細については，「表C-35　Password」を参照してください。

ポリシー定義ファイル

TokenValidation要素
TokenValidation要素の詳細については，「表C-62　TokenValidation」を参照してください。

X509TokenValidation要素
X509TokenValidationの詳細については，「表C-63　X509TokenValidation」を参照してください。

(2)　クライアント側がWebアプリケーションの場合の移行手順

旧バージョンから07-60に移行するには，通常の実装手順に加えて，定義ファイルを編集する必要があります。

クライアント側がWebアプリケーションの場合に，Webサービスセキュリティ機能を移行する手順を次の図に示します。

図B-2　クライアント側がWebアプリケーションの場合の移行手順

定義ファイルの編集方法については，「付録B(1)(a)　定義ファイルを編集する」を参照してください。定義ファイルの編集以外の手順については，「3.9.2　クライアント側がWebアプリケーションの場合の実装手順」を参照してください。

(3)　クライアント側がコマンドラインJavaアプリケーションの場合の移行手順

旧バージョンから07-60に移行するには，通常の実装手順に加えて，定義ファイルを編集する必要があります。

クライアント側がコマンドラインJavaアプリケーションの場合に，Webサービスセキュリティ機能を移行する手順を次の図に示します。

図B-3　クライアント側がコマンドラインJavaアプリケーションの場合の移行手順

定義ファイルの編集方法については，「付録B(1)(a)　定義ファイルを編集する」を参照してください。定義ファイルの編集以外の手順については，「3.9.3　クライアント側がコマンドラインJavaアプリケーションの場合の実装手順」を参照してください。

付録C　定義ファイルの項目の詳細

Webサービスセキュリティ機能を使用するには，次の二つの定義ファイルを設定します。

Webサービスセキュリティ機能定義ファイル

Webサービスセキュリティポリシー定義ファイル

Webサービスセキュリティの各機能で必要な定義ファイルの項目については，「3.1　定義ファイルの設定」を参照してください。

ここでは，各定義ファイルで設定する要素の指定回数や，注意事項などの詳細を説明します。なお，各定義ファイルの要素の構成は次の図のようになっています。

図C-1　Webサービスセキュリティ機能定義ファイルの要素の構成

図C-2　Webサービスセキュリティポリシー定義ファイルの要素の構成

＜この節の構成＞

付録C.1　Webサービスセキュリティ機能定義ファイルの項目

付録C.2　Webサービスセキュリティポリシー定義ファイルの項目

付録C.1　Webサービスセキュリティ機能定義ファイルの項目

Webサービスセキュリティ機能定義ファイルは，XMLファイルです。ここでは，Webサービスセキュリティ機能定義ファイルの要素，および要素で指定できる属性とコンテンツ（子要素）について説明します。なお，表中のデータ型は，XML Schemaのデータ型を表しています。

＜この項の構成＞

(1)　 SecurityConfig

(2)　 BindingConfig

(3)　 KeyLocator

(4)　 KeyStore

(5)　 Certificate

(6)　 PrivateKey

(7)　 SecretKeyLocationList

(8)　 SecretKeyFile

(9)　 RequestSenderConfig

(10)　 SenderPortConfig

(11)　 RoleConfig

(12)　 BinarySecurityTokenConfig

(13)　 SignatureConfig

(14)　 CanonicalizationMethod

(15)　 CanonicalizeParam

(16)　 SignatureMethod

(17)　 SignatureTarget

(18)　 Transform

(19)　 TransformParam

(20)　 SignatureKey

(21)　 SignatureKeyInfo

(22)　 KeyReferenceConfig

(23)　 DirectReference

(24)　 KeyIdentifier

(25)　 EncryptionConfig

(26)　 ContentsEncryption

(27)　 EncryptionTarget

(28)　 EncryptionMethod

(29)　 KeyEncryption

(30)　 KeyEncryptionKey

(31)　 TimestampConfig

(32)　 Expires

(33)　 UsernameTokenConfig

(34)　 Username

(35)　 Password

(36)　 ResponseSenderConfig

(37)　 RequestReceiverConfig

(38)　 ReceiverPortConfig

(39)　 AuthenticationConfig

(40)　 UsernameTokenAuthnConfig

(41)　 AuthnMethod

(42)　 LoginContext

(43)　 ConfigurationIndex

(44)　 VerificationConfig

(45)　 VerificationKeyLocationList

(46)　 VerificationKeyStore

(47)　 DecryptionConfig

(48)　 DecryptionKeyLocationList

(49)　 DecryptionSecretKeyLocationList

(50)　 ResponseReceiverConfig

(1)　 SecurityConfig

Webサービスセキュリティ定義ファイルのルート要素です。コンテンツ（子要素）は，次の表の順番で指定する必要があります。

表C-1　SecurityConfig

種別
要素
説明
データ型
指定
回数

属性
－
－

－

－

コ
ン
テ
ン
ツ
BindingConfig
Webサービスセキュリティの署名，暗号化機能で使用するトークンの情報を指定します。このコンテンツは署名，暗号化機能使用時は必須です。

－

0
または
1

RequestSenderConfig
リクエストメッセージ送信時の設定を指定します。省略時はリクエストメッセージ送信時にWebサービスセキュリティ機能が実行されません。

－

0
または
1

ResponseSenderConfig
レスポンスメッセージ送信時の設定を指定します。省略時はレスポンスメッセージ送信時にWebサービスセキュリティ機能が実行されません。

－

0
または
1

RequestReceiverConfig
リクエストメッセージ受信時の設定を指定します。省略時はリクエストメッセージ受信時にWebサービスセキュリティ機能が実行されません。

－

0
または1

ResponseReceiverConfig
レスポンスメッセージ受信時の設定を指定します。省略時はレスポンスメッセージ受信時にWebサービスセキュリティ機能が実行されません。

－

0
または
1

(2)　 BindingConfig

Webサービスセキュリティの各機能で共通的に使用する情報を指定します。

表C-2　BindingConfig

種別
要素
説明
データ型
指定
回数

属性
－
－

－

－

コ
ン
テ
ン
ツ
KeyLocator
鍵の格納場所の情報を指定します。このコンテンツは署名，暗号化機能使用時は必須です。

－

0
または
1

(3)　 KeyLocator

鍵の格納場所の情報を指定します。コンテンツ（子要素）は，次の表の順番で指定する必要があります。

表C-3　KeyLocator

種別
要素
説明
データ型
指定
回数

属性
－
－

－

－

コ
ン
テ
ン
ツ
KeyStore
Javaのキーストア形式の鍵の格納場所情報を指定します。このコンテンツは署名，暗号化機能使用時は必須です。

－

0以上

SecretKeyLocationList
共通鍵の格納場所の情報を指定します。このコンテンツは暗号化機能使用時は必須です。

－

0
または
1

(4)　 KeyStore

Javaのキーストア形式の鍵の格納場所情報を指定します。

表C-4　KeyStore

種別
要素
説明
データ型
指定
回数

属性
Id
セキュリティ定義ファイル中で一意に識別するためのID値を指定します。

ID

1

File
キーストアファイルの名称を"ラベル名+拡張子"の形式で指定します。

String

1

Type
キーストアのタイプを示す文字列を指定します。

String

1

Password
キーストアのパスワードを指定します。

String

1

コ
ン
テ
ン
ツ
Certificate
キーストア内のX.509証明書の情報を指定します。このコンテンツは，キーストア内の証明書を利用する場合は必須です。

－

0以上

PrivateKey
キーストア内の非公開鍵の情報を指定します。このコンテンツは，キーストア内の非公開鍵を利用する場合は必須です。

－

0以上

(5)　 Certificate

キーストア内の証明書の情報を指定します。コンテンツはありません。

表C-5　Certificate

種別
要素
説明
データ型
指定
回数

属性
Id
セキュリティ機能定義ファイル中で一意に識別するためのID値を指定します。

ID

1

Alias
キーストアファイル中のX.509証明書のエイリアス名を指定します。

String

1

(6)　 PrivateKey

キーストア内の非公開鍵の情報を指定します。コンテンツはありません。

表C-6　PrivateKey

種別
要素
説明
データ型
指定
回数

属性
Id
セキュリティ機能定義ファイル中で一意に識別するためのID値を指定します。

ID

1

Alias
キーストアファイル中の秘密鍵のエイリアス名を指定します。

String

1

Password
キーストアファイル中の秘密鍵のパスワードを指定します。

String

1

(7)　 SecretKeyLocationList

共通鍵の格納場所の情報を指定します。

表C-7　SecretKeyLocationList

種別
要素
説明
データ型
指定
回数

属性
－
－

－

－

コ
ン
テ
ン
ツ
SecretKeyFile
共通鍵ファイルの情報を指定します。このコンテンツは暗号化機能使用時は必須です。

－

0以上

(8)　 SecretKeyFile

共通鍵ファイルの情報を指定します。コンテンツはありません。

表C-8　SecretKeyFile

種別
要素
説明
データ型
指定
回数

属性
Id
セキュリティ定義ファイル中で一意に識別するためのID値を指定します。

ID

1

Name
共通鍵作成コマンドで作成した共通鍵ファイル名称を"ラベル名+拡張子"の形式で指定します。

String

1

KeyType
共通鍵ファイル作成時に指定したアルゴリズム識別子を指定します。

String

1

KeyName
送信する鍵の識別子を指定します。

String

1

(9)　 RequestSenderConfig

リクエストメッセージ送信時の設定を指定します。

表C-9　RequestSenderConfig

種別
要素
説明
データ型
指定
回数

属性
－
－

－

－

コ
ン
テ
ン
ツ
SenderPortConfig
送信時に，Webサービスセキュリティ機能を適用するSOAPサービスエンドポイントの情報を指定します。

－

1以上

(10)　 SenderPortConfig

送信時に，Webサービスセキュリティ機能を適用する，SOAPサービスエンドポイントの情報を指定します。ResponseSenderConfigの下にSenderPortConfigを指定する場合は，Name属性に"*"を指定してください。

表C-10　SenderPortConfig

種別
要素
説明
データ型
指定
回数

属性
Name
Webサービスセキュリティ機能を適用するSOAPサービスのURLを指定します。ここで指定したエンドポイントへメッセージを送信する際に，このコンテンツ以下で指定するWebサービスセキュリティ機能の設定が適用されます。"*"を指定すると，エンドポイントの指定に関係なくWebサービスセキュリティ機能の設定が適用されます。

anyURI

1

コ
ン
テ
ン
ツ
RoleConfig
メッセージ送信時に適用するユーザ名，パスワード，署名，暗号化に関する情報を指定します。省略時はメッセージ送信時にWebサービスセキュリティ機能が実行されません。

－

0以上

(11)　 RoleConfig

メッセージ送信時に適用するユーザ名，パスワード，署名，暗号化に関する情報を指定します。

表C-11　RoleConfig

種別
要素
説明
データ型
指定
回数

属性
mustUnderstand
送信するSOAPメッセージヘッダのmustUnderstand属性を"true", "false"，"1"，"0"のどれかで指定します。この属性省略時は，"true"が仮定されます。"true"，"1"を指定した場合は，SOAPメッセージヘッダにmustUnderstand属性が付加されます。"false"，"0"を指定した場合は，SOAPメッセージヘッダにmustUnderstand属性は付加されません。

boolean

0
または
1

role
SOAPメッセージヘッダのrole属性（SOAP1.1でのactor属性）を指定します。

anyURI

1

Operation
SOAPサービスのサービスメソッド名を指定します。メソッドが複数ある場合は，半角スペースで区切って指定します。この要素を省略した場合は，SOAPサービスのすべてのメソッドに対して，このコンテンツ以下で指定するWebサービスセキュリティ機能の設定が適用されます。この指定は，RequestSenderConfig以下のRoleConfigに指定した場合だけ有効となります。また，呼び出すSOAPサービスがメッセージング形態の場合は，この指定は無視されます。

NMTOKENS

0
または
1

コ
ン
テ
ン
ツ
BinarySecurityTokenConfig
SOAPメッセージに付与するバイナリセキュリティトークンの情報を指定します。省略時は，SOAPメッセージにバイナリセキュリティトークンは付与されません。

－

0以上

SignatureConfig
署名に関する情報を指定します。省略時は，SOAPメッセージに署名は付与されません。

－

0以上

EncryptionConfig
暗号化に関する情報を指定します。省略時は，SOAPメッセージが暗号化されません。

－

0以上

TimestampConfig
Timestamp要素に関する情報を指定します。省略時は，SOAPメッセージにTimestamp要素は付与されません。

－

0
または
1

UsernameTokenConfig
UsernameToken要素に関する情報を指定します。省略時は，SOAPメッセージにUsernameToken要素は付与されません。

－

0以上

(12)　 BinarySecurityTokenConfig

SOAPメッセージに付与するバイナリセキュリティトークンの情報を指定します。コンテンツはありません。

表C-12　BinarySecurityTokenConfig

種別
要素
説明
データ型
指定
回数

属性
Id
セキュリティ機能定義ファイル中で一意に識別するためのID値を指定します。

ID

1

IdRef
バイナリセキュリティトークンとして使用するリソースの位置（Id）を指定します。Certificate要素のId値を指定します。

IDREF

1

EmbedId
バイナリセキュリティトークン要素をセキュリティヘッダに埋め込む時に付加するId値を指定します。

String

1

EncodingType
セキュリティトークンを送信する際のエンコード種別を指定します。指定できる値は，"http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-soap-message-security-1.0#Base64Binary"だけです。省略時は，"http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-soap-message-security-1.0#Base64Binary"が仮定されます。

anyURI

0
または
1

ValueType
バイナリセキュリティトークンの種別を指定します。指定できる値は，"http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-x509-token-profile-1.0#X509v3"だけです。省略時は，"http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-x509-token-profile-1.0#X509v3"が仮定されます。

anyURI

0
または
1

(13)　 SignatureConfig

署名に関する情報を指定します。コンテンツ（子要素）は，次の表の順番で指定する必要があります。

表C-13　SignatureConfig

種別
要素
説明
データ型
指定
回数

属性
－
－

－

－

コ
ン
テ
ン
ツ
CanonicalizationMethod
正規化アルゴリズムを指定します。

－

1

SignatureMethod
署名アルゴリズムを指定します。

－

1

SignatureTarget
署名対象を指定します。

－

1以上

SignatureKey
署名に使用する鍵の情報を指定します。

－

1

SignatureKeyInfo
署名に使用する鍵の参照情報を指定します。

－

1

(14)　 CanonicalizationMethod

正規化アルゴリズムを指定します。

表C-14　CanonicalizationMethod

種別
要素
説明
データ型
指定
回数

属性
Algorithm
正規化アルゴリズムのアルゴリズム識別子を指定します。

anyURI

1

コ
ン
テ
ン
ツ
CanonicalizeParam
正規化処理で使用するパラメタを指定します。省略時は正規化処理時にパラメタは付与されません。

－

0
または
1

(15)　 CanonicalizeParam

正規化処理で使用するパラメタを指定します。コンテンツはありません。

表C-15　CanonicalizeParam

種別
要素
説明
データ型
指定
回数

属性
InclusiveNamespaces
CanonicalizationMethodのAlgorithm属性がExclusive Canonical XMLの場合に，Exclusive XML Canonicalization Version 1.0で規定されている名前空間プレフィクスを指定します。指定方法は，対象となる名前空間プレフィクス名をスペースで区切って指定します（例 "ns1 ns2 ns3"）。CanonicalizationMethodのAlgorithm属性がExclusive Canonical XML（Exclusive Canonical XML with CommentsまたはExclusive Canonical XML omits comments）でない場合はこの指定は無視されます。

NMTOKENS

1

(16)　 SignatureMethod

署名アルゴリズムを指定します。コンテンツはありません。

表C-16　SignatureMethod

種別
要素
説明
データ型
指定
回数

属性
Algorithm
署名アルゴリズムのアルゴリズム識別子を指定します。

anyURI

1

(17)　 SignatureTarget

署名対象を指定します。属性の指定は，PartまたはTargetIdのどちらかが必須になります。

表C-17　SignatureTarget

種別
要素
説明
データ型
指定
回数

属性
Part
署名対象となるSOAPエンベロープ中のエレメントを指定します。指定可能な値は"Body"だけです。

enum

0
または
1

TargetId
署名対象のId値（SOAPメッセージ内の要素にあらかじめ設定済みのwsu:Idの値）を指定します。この指定はメッセージング形態の場合だけ有効です。

String

0
または
1

コ
ン
テ
ン
ツ
Transform
トランスフォームアルゴリズムを指定します（必須）。

－

1以上

(18)　 Transform

トランスフォームアルゴリズムを指定します。

表C-18　Transform

種別
要素
説明
データ型
指定
回数

属性
Algorithm
トランスフォームアルゴリズムのアルゴリズム識別子を指定します。

anyURI

1

コ
ン
テ
ン
ツ
TransformParam
トランスフォームアルゴリズムで使用するパラメタを指定します。省略時はトランスフォーム処理時にパラメタは付与されません。

－

0
または
1

(19)　 TransformParam

トランスフォームアルゴリズムで使用するパラメタを指定します。コンテンツはありません。

表C-19　TransformParam

種別
要素
説明
データ型
指定
回数

属性
InclusiveNamespaces
TransformのAlgorithm属性がExclusive Canonical XMLの場合に，Exclusive XML Canonicalization Version 1.0で規定されている名前空間プレフィクスを指定します。指定方法は，対象となる名前空間プレフィクス名をスペースで区切って指定します（例 "ns1 ns2 ns3"）。
TransformのAlgorithm属性がExclusive Canonical XML（Exclusive Canonical XML with CommentsまたはExclusive Canonical XML omits comments）でない場合はこの指定は無視されます。

NMTOKENS

1

(20)　 SignatureKey

署名に使用する鍵の情報を指定します。コンテンツはありません。

表C-20　SignatureKey

種別
要素
説明
データ型
指定
回数

属性
IdRef
鍵の位置（Binding要素のPrivateKey要素で指定するId属性）を指定します。

IDREF

1

(21)　 SignatureKeyInfo

署名に使用する鍵の参照情報を指定します。

表C-21　SignatureKeyInfo

種別
要素
説明
データ型
指定
回数

属性
－
－

－

－

コ
ン
テ
ン
ツ
KeyReferenceConfig
署名に使用する鍵のリファレンス情報（KeyInfo要素内のSecurityTokenReference要素として設定される情報）を指定します。

－

1

(22)　 KeyReferenceConfig

署名に使用する鍵のリファレンス情報を指定します。コンテンツは，DirectReferenceまたはKeyIdentifierのどちらかを指定します。

表C-22　KeyReferenceConfig

種別
要素
説明
データ型
指定
回数

属性
－
－

－

－

コ
ン
テ
ン
ツ
DirectReference
鍵の参照メカニズムをDirectReferenceにする場合の情報を指定します。

－

0
または
1

KeyIdentifier
鍵の参照メカニズムをKeyIdentifierにする場合の情報を指定します。

－

0
または
1

(23)　 DirectReference

鍵の参照メカニズムをDirectReferenceにする場合の情報を指定します。コンテンツはありません。URI属性は，先頭に"#"を必ず付加してください。

表C-23　DirectReference

種別
要素
説明
データ型
指定
回数

属性
URI
セキュリティヘッダに埋め込む鍵（バイナリセキュリティトークン）の位置（URI）を指定します。ここで指定した値がセキュリティヘッダ内のwsse:Reference要素のURI属性に設定されます。ここで指定する値は，BinarySecurityTokenConfig要素のEmbedIdの値を参照する値である必要があります。

anyURI

1

(24)　 KeyIdentifier

鍵の参照メカニズムをKeyIdentifierにする場合の情報を指定します。コンテンツはありません。

表C-24　KeyIdentifier

種別
要素
説明
データ型
指定
回数

属性
IdRef
鍵として使用するキーストアの非公開鍵の位置（Certificate要素のId値）を指定します。

IDREF

1

EncodingType
KeyIdentifier要素のエンコード種別を指定します。
指定できる値は，"http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-soap-message-security-1.0#Base64Binary"だけです。省略時は，"http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-soap-message-security-1.0#Base64Binary"が仮定されます。

anyURI

0
または
1

ValueType
KeyIdentifier要素の種別を指定します。指定できる値は，"http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-x509-token-profile-1.0#X509SubjectKeyIdentifier"だけです。省略時は，"http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-x509-token-profile-1.0#X509SubjectKeyIdentifier"が仮定されます。

anyURI

0
または
1

(25)　 EncryptionConfig

暗号化に関する情報を指定します。

表C-25　EncryptionConfig

種別
要素
説明
データ型
指定
回数

属性
－
－

－

－

コ
ン
テ
ン
ツ
ContentsEncryption
メッセージ内容の暗号化に関する情報を指定します。

－

1

KeyEncryption
鍵の暗号化に関する情報を指定します。EncryptionTypeが"ContentsEncryption"の場合は不要です。

－

1

(26)　 ContentsEncryption

メッセージ内容の暗号化に関する情報を指定します。

表C-26　ContentsEncryption

種別
要素
説明
データ型
指定
回数

属性
－
－

－

－

コ
ン
テ
ン
ツ
EncryptionTarget
暗号化対象を指定します。

－

1

(27)　 EncryptionTarget

暗号化対象を指定します。PartまたはTargetIdのどちらかを指定してください。PartおよびTargetIdの両方を指定した場合は，Partの指定だけが有効になります。また，TargetIdを指定する場合は，対象となるSOAPメッセージのエレメントに同じ値のwsu:Id属性が指定されている必要があります。

表C-27　EncryptionTarget

種別
要素
説明
データ型
指定
回数

属性
Part
暗号化対象となるSOAPエンベロープ中のエレメントを指定します。指定可能な値は"BodyContent"だけです。

enum

0
または
1

TargetId
暗号化対象のId値（SOAPメッセージ内の要素にあらかじめ設定済みのwsu:Idの値）を指定します。この指定はメッセージングSOAPサービスの場合だけ有効です。

String

0
または
1

EmbedId
暗号化適用後のエレメントに付加するId値（wsu:Id属性として設定される）を指定します。この属性を省略した場合はId値はWebサービスセキュリティ機能独自の値を自動的に付加します。

String

0
または
1

コ
ン
テ
ン
ツ
EncryptionMethod
暗号化アルゴリズムを指定します。

－

1

(28)　 EncryptionMethod

暗号化アルゴリズムを指定します。コンテンツはありません。

表C-28　EncryptionMethod

種別
要素
説明
データ型
指定
回数

属性
Algorithm
暗号化アルゴリズムのアルゴリズム識別子を指定します。

anyURI

1

(29)　 KeyEncryption

鍵の暗号化に関する情報を指定します。

表C-29　KeyEncryption

種別
要素
説明
データ型
指定
回数

属性
－
－

－

－

コ
ン
テ
ン
ツ
EncryptionMethod
暗号化アルゴリズムを指定します。

－

1

KeyEncryptionKey
鍵の暗号化に使用する鍵の情報を指定します。

－

1

(30)　 KeyEncryptionKey

鍵の暗号化に使用する鍵の情報を指定します。コンテンツはありません。

表C-30　KeyEncryptionKey

種別
要素
説明
データ型
指定
回数

属性
IdRef
使用する鍵の位置（SecretKeyFile要素で指定するId属性）を指定します。

IDREF

1

(31)　 TimestampConfig

Timestamp要素に関する情報を指定します。

表C-31　TimestampConfig

種別
要素
説明
データ型
指定
回数

属性
EmbedId
Timestamp要素をセキュリティヘッダに埋め込む時のId値を指定します。省略時はTimestamp要素をセキュリティヘッダに埋め込む時にIdは付与されません。

String

0
または
1

Created
Timestamp要素にCreated要素を付加するかどうかを"true"，"false"，"1"，"0"のどれかで指定します。"true"，"1"を指定した場合Created要素が付加されます。"false"，"0"を指定した場合Created要素は付加されません。省略時は"false"が仮定されます。

boolean

0
または
1

Expires
Timestamp要素にExpires要素を付加するかどうかを"true"，"false"，"1"，"0"のどれかで指定します。"true"，"1"を指定した場合Expires要素が付加されます。"false"，"0"を指定した場合Expires要素は付加されません。省略時は"false"が仮定されます。

boolean

0
または
1

コ
ン
テ
ン
ツ
Expires
Expires要素に関する情報を指定します。

－

0
または
1

(32)　 Expires

Expires要素に関する情報を指定します。コンテンツはありません。

表C-32　Expires

種別
要素
説明
データ型
指定
回数

属性
Value
有効期限を設定します。現在時刻からの相対時間をミリ秒単位で指定します。指定可能な範囲は1,000～2,147,483,647です。範囲外の値を指定した場合，または省略時は300,000（5分）が仮定されます。

int

0
または
1

(33)　 UsernameTokenConfig

UsernameToken要素に関する情報を指定します。

表C-33　UsernameTokenConfig

種別
要素
説明
データ型
指定
回数

属性
Id
Webサービスセキュリティ機能定義ファイル中で，UsernameTokenConfig要素を一意に識別するためのID値を指定します。

ID

1

EmbedId
UsernameToken要素をセキュリティヘッダに埋め込む時のId値を指定します。省略時はUsernameToken要素をセキュリティヘッダに埋め込む時にIdが付与されません。

String

0
または
1

コ
ン
テ
ン
ツ
Username
ユーザ名に関する情報を指定します。

－

1

Password
パスワードに関する情報を指定します。省略時はUsernameToken要素にパスワードが付与されません。

－

0
または
1

(34)　 Username

ユーザ名に関する情報を指定します。

表C-34　Username

種別
要素
説明
データ型
指定
回数

属性
－
－

－

－

コ
ン
テ
ン
ツ
ユーザ名
認証に使用するユーザID値を指定します。

String

1

(35)　 Password

パスワードに関する情報を指定します。

表C-35　Password

種別
要素
説明
データ型
指定
回数

属性
Type
パスワードの形式を指定します。指定できる値は，"http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0#PasswordText"（テキスト），または"http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0#PasswordDigest"（ダイジェスト）の2種類だけです。省略時は，"http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0#PasswordText"が仮定されます。

anyURI

0
または
1

コ
ン
テ
ン
ツ
パスワード値
認証に使用するパスワード値を指定します。

String

1

(36)　 ResponseSenderConfig

レスポンスメッセージ送信時の設定を指定します。

表C-36　ResponseSenderConfig

種別
要素
説明
データ型
指定
回数

属性
－
－

－

－

コ
ン
テ
ン
ツ
SenderPortConfig
送信時にWebサービスセキュリティ機能を適用するSOAPサービスエンドポイントの情報を指定します。

－

1以上

(37)　 RequestReceiverConfig

リクエストメッセージ受信時の設定を指定します。

表C-37　RequestReceiverConfig

種別
要素
説明
データ型
指定
回数

属性
－
－

－

－

コ
ン
テ
ン
ツ
ReceiverPortConfig
Webサービスセキュリティ機能を適用するSOAPサービスエンドポイントの情報を指定します。

－

1以上

(38)　 ReceiverPortConfig

受信時にWebサービスセキュリティ機能を適用するSOAPサービスエンドポイントの情報を指定します。

表C-38　ReceiverPortConfig

種別
要素
説明
データ型
指定
回数

属性
Name
メッセージを受信するSOAPサービスのURLを指定します。

anyURI

1

My_role
Webサービスセキュリティ機能を適用するSOAPサービスのロール名をURI形式で指定します。受信したSOAPメッセージのセキュリティヘッダ中のrole属性値が，ここで指定したロール名と一致した場合に，PortTypeConfig以下に指定した動作定義に従ってWebサービスセキュリティ機能を実行します。この属性を省略した場合は，受信したSOAPメッセージのセキュリティヘッダ中のrole属性の内容（role属性がない場合も含む）にかかわらず，PortTypeConfig以下に指定した動作定義に従ってWebサービスセキュリティ機能を実行します。

anyURI

1

コ
ン
テ
ン
ツ
AuthenticationConfig
セキュリティトークンの認証に関する情報を指定します。省略時はセキュリティトークンの認証を行いません。

－

0
または
1

VerificationConfig
署名検証に関する情報を指定します。省略時は署名検証を行いません。

－

0
または
1

DecryptionConfig
復号化に関する情報を指定します。省略時は復号化を行いません。

－

0
または
1

(39)　 AuthenticationConfig

セキュリティトークンの認証に関する情報を指定します。

表C-39　AuthenticationConfig

種別
要素
説明
データ型
指定
回数

属性
－
－

－

－

コ
ン
テ
ン
ツ
UsernameTokenAuthnConfig
UsernameTokenの認証に関する情報を指定します。省略時はUsernameTokenの認証を行いません。

－

0
または
1

(40)　 UsernameTokenAuthnConfig

UsernameTokenの認証に関する情報を指定します。LoginContextタグを省略した場合は，UsernameTokenの認証をしないで処理を続行します。

表C-40　UsernameTokenAuthnConfig

種別
要素
説明
データ型
指定
回数

属性
－
－

－

－

コ
ン
テ
ン
ツ
AuthnMethod
認証方式に関する情報を指定します。

－

1

LoginContext
JAAS認証に関する情報を指定します。AuthnMethodに"JAASAuthn"を指定した場合，この要素は必須です。

－

0
または
1

(41)　 AuthnMethod

認証方式に関する情報を指定します。コンテンツはありません。

表C-41　AuthnMethod

種別
要素
説明
データ型
指定
回数

属性
Type
認証方式を指定します。指定できる値は"JAASAuthn"だけです。

enum

1

(42)　 LoginContext

JAAS認証に関する情報を指定します。

表C-42　LoginContext

種別
要素
説明
データ型
指定
回数

属性
－
－

－

－

コ
ン
テ
ン
ツ
ConfigurationIndex
ログイン構成のインデックスを指定します。

－

1

(43)　 ConfigurationIndex

ログイン構成のインデックスを指定します。

表C-43　ConfigurationIndex

種別
要素
説明
データ型
指定
回数

属性
－
－

－

－

コ
ン
テ
ン
ツ
インデックス値
LoginContextクラスをインスタンス化する際に使用するログイン構成のインデックス（jaas.conf内のインデックス名）を指定します。

－

1

(44)　 VerificationConfig

署名検証に関する情報を指定します。

表C-44　VerificationConfig

種別
要素
説明
データ型
指定
回数

属性
－
－

－

－

コ
ン
テ
ン
ツ
VerificationKeyLocationList
署名検証に用いる鍵に関する情報を指定します。

－

1

(45)　 VerificationKeyLocationList

署名検証に用いる鍵に関する情報を指定します。受信したセキュリティヘッダ内の署名鍵の参照形式（SecurityTokenReference要素で示されます）が"wsse:Reference"の場合，この要素のVerificationKeyStoreタグで指定された内容は無視されます。

表C-45　VerificationKeyLocationList

種別
要素
説明
データ型
指定
回数

属性
－
－

－

－

コ
ン
テ
ン
ツ
VerificationKeyStore
署名検証に用いる鍵の所在に関する情報を指定します。

－

1以上

(46)　 VerificationKeyStore

署名検証に用いる鍵の所在に関する情報を指定します。コンテンツはありません。

表C-46　VerificationKeyStore

種別
要素
説明
データ型
指定
回数

属性
IdRef
使用する鍵を含むKeyStore要素のId属性を指定します。

IDREF

1

(47)　 DecryptionConfig

復号化に関する情報を指定します。

表C-47　DecryptionConfig

種別
要素
説明
データ型
指定
回数

属性
－
－

－

－

コ
ン
テ
ン
ツ
DecryptionKeyLocationList
復号に用いる鍵の所在に関する情報を指定します。

－

1

(48)　 DecryptionKeyLocationList

復号に用いる鍵の所在に関する情報を指定します。

表C-48　DecryptionKeyLocationList

種別
要素
説明
データ型
指定
回数

属性
－
－

－

－

コ
ン
テ
ン
ツ
DecryptionSecretKeyLocationList
復号に用いる鍵の所在に関する情報を指定します。

－

1以上

(49)　 DecryptionSecretKeyLocationList

復号に用いる鍵の所在に関する情報を指定します。コンテンツはありません。

表C-49　DecryptionSecretKeyLocationList

種別
要素
説明
データ型
指定
回数

属性
IdRef
使用する鍵を含むSecretKeyFile要素のId属性の値を指定します。

IDREF

1

(50)　 ResponseReceiverConfig

リクエストメッセージ受信時の設定を指定します。

表C-50　ResponseReceiverConfig

種別
要素
説明
データ型
指定
回数

属性
－
－

－

－

コ
ン
テ
ン
ツ
ReceiverPortConfig
Webサービスセキュリティ機能を適用するSOAPサービスエンドポイントの情報を指定します。

－

1

付録C.2　Webサービスセキュリティポリシー定義ファイルの項目

Webサービスセキュリティポリシー定義ファイルは，XMLファイルです。ここでは，Webサービスセキュリティポリシー定義ファイルの要素，および要素で指定できる属性とコンテンツ（子要素）について説明します。なお，表中のデータ型は，XML Schemaのデータ型を表しています。

＜この項の構成＞

(1)　 PolicyConfig

(2)　 GlobalConfig

(3)　 Max-Clock-Skew

(4)　 Fresh-Time-Limit

(5)　 RequestReceiverConfig

(6)　 ReceiverPortConfig

(7)　 SecurityTokenConfig

(8)　 UsernameTokenConfig

(9)　 Nonce

(10)　 Created

(11)　 BinarySecurityTokenConfig

(12)　 TokenValidation

(13)　 X509TokenValidation

(14)　 AuthorityCertificateLocationList

(15)　 AuthorityCertificateFile

(16)　 VerificationConfig

(17)　 SignatureMethodList

(18)　 SignatureMethod

(19)　 CanonicalizationMethodList

(20)　 CanonicalizationMethod

(21)　 SignatureTarget

(22)　 TransformMethodList

(23)　 TransformMethod

(24)　 DecryptionPolicyConfig

(25)　 DecryptionTarget

(26)　 DecryptionConfig

(27)　 ContentsDecryption

(28)　 DecryptionMethodList

(29)　 DecryptionMethod

(30)　 KeyDecryption

(31)　 TimestampConfig

(32)　 Created

(33)　 Expires

(34)　 ResponseReceiverConfig

(1)　 PolicyConfig

ポリシー定義ファイルのルート要素です。

表C-51　PolicyConfig

種別
要素
説明
データ型
指定
回数

属性
－
－

－

－

コ
ン
テ
ン
ツ
GlobalConfig
Webサービスセキュリティポリシー定義で共通的に使用するポリシーを指定します。省略時は，GlobalConfig要素内の値はすべてデフォルト値が仮定されます。

－

0
または
1

RequestReceiverConfig
リクエストメッセージ受信時の設定を指定します。省略時は，リクエストメッセージ受信時のポリシーチェックが行われません。

－

0
または
1

ResponseReceiverConfig
レスポンスメッセージ受信時の設定を指定します。省略時は，レスポンスメッセージ受信時のポリシーチェックが行われません。

－

0
または
1

(2)　 GlobalConfig

Webサービスセキュリティポリシー定義で共通的に使用するポリシーを指定します。

表C-52　GlobalConfig

種別
要素
説明
データ型
指定
回数

属性
－
－

－

－

コ
ン
テ
ン
ツ
Max-Clock-Skew
有効期限をチェックする際の時間差に関する情報を指定します。省略時はMax-Clock-Skew要素内の値はすべてデフォルト値が仮定されます。

－

0
または
1

Fresh-Time-Limit
UsernameToken要素，Timestamp要素内のCreated要素の有効期間に関するポリシーチェックの情報を指定します。省略時はFresh-Time-Limit要素内の値はすべてデフォルト値が仮定されます。

－

0
または
1

(3)　 Max-Clock-Skew

有効期限をチェックする際の時間差に関する情報を指定します。コンテンツはありません。

表C-53　Max-Clock-Skew

種別
要素
説明
データ型
指定
回数

属性
Value
UsernameToken要素およびTimestamp要素の子要素であるCreated要素，またはTimestamp要素の子要素であるExpires要素に指定された値に基づいてSOAPメッセージの有効期限を確認する場合に，送信側と受信側との時間の差をどこまで許容するかを指定します。指定するときの単位はミリ秒です。
指定できる範囲は，1～2,147,483,647の間です。範囲外の値を指定した場合，または指定を省略した場合は，0ミリ秒が仮定されます。

int

1

(4)　 Fresh-Time-Limit

UsernameToken要素，およびTimestamp要素内のCreated要素の有効期間に関するポリシーチェックの情報を指定します。コンテンツはありません。

表C-54　Fresh-Time-Limit

種別
要素
説明
データ型
指定
回数

属性
Value
UsernameToken要素およびTimestamp要素の子要素であるCreated要素に指定された値を確認する場合に，送信側と受信側との時間の差をどこまで許容するかを指定します。
指定するときの単位はミリ秒です。
指定できる範囲は，1,000～2,147,483,647の間です。範囲外の値を指定した場合，または指定を省略した場合は，300,000ミリ秒が仮定されます。

int

1

(5)　 RequestReceiverConfig

リクエストメッセージ受信時の設定を指定します。

表C-55　RequestReceiverConfig

種別
要素
説明
データ型
指定
回数

属性
－
－

－

－

コ
ン
テ
ン
ツ
ReceiverPortConfig
Webサービスセキュリティポリシー定義を適用するSOAPサービスエンドポイントの情報を指定します。

－

1以上

(6)　 ReceiverPortConfig

Webサービスセキュリティポリシー定義を適用するSOAPサービスエンドポイントの情報を指定します。

表C-56　ReceiverPortConfig

種別
要素
説明
データ型
指定
回数

属性
Name
Webサービスセキュリティポリシー定義を適用するSOAPサービスのURLを指定します。
アスタリスク"*"を指定した場合，すべてのSOAPサービスに対してWebサービスセキュリティ定義が適用されます。

anyURI

1

My_role
Webサービスセキュリティポリシー定義を適用するSOAPサービスのロール名を，URIで指定します。受信したSOAPメッセージのセキュリティヘッダ内で，RoleConfig要素のrole属性に指定されている値がMy_role属性で指定したロール名と一致した場合に，ReceiverPortConfig要素で指定した定義に従ってWebサービスセキュリティポリシー定義が適用されます。

anyURI

1

コ
ン
テ
ン
ツ
SecurityTokenConfig
セキュリティトークンに関するポリシーチェックの情報を指定します。省略時はセキュリティトークンに関するポリシーチェックが行われません。

－

0
または
1

VerificationConfig
署名に関するポリシーチェックの情報を指定します。省略時は署名に関するポリシーチェックが行われません。

－

0
または
1

DecryptionPolicyConfig
復号化に関するポリシーチェックの情報を指定します。省略時は復号化に関するポリシーチェックが行われません。

－

0
または
1

TimestampConfig
タイムスタンプに関するポリシーチェックの情報を指定します。省略時はタイムスタンプに関するポリシーチェックが行われません。

－

0
または
1

(7)　 SecurityTokenConfig

セキュリティトークンに関するポリシーチェックの情報を指定します。

表C-57　SecurityTokenConfig

種別
要素
説明
データ型
指定
回数

属性
－
－

－

－

コ
ン
テ
ン
ツ
UsernameTokenConfig
UsernameToken要素に関するポリシーチェックの情報を指定します。省略時はUsernameTokenに関するポリシーチェックが行われません。

－

0
または
1

BinarySecurityTokenConfig
バイナリセキュリティトークンに関するポリシーチェックの情報を指定します。省略時はバイナリセキュリティトークンに関するポリシーチェックが行われません。

－

0
または
1

(8)　 UsernameTokenConfig

UsernameToken要素に関するポリシーチェックの情報を指定します。

表C-58　UsernameTokenConfig

種別
要素
説明
データ型
指定
回数

属性
Required
セキュリティヘッダ内のUsernameToken要素の有無をチェックするかどうかを"true"，"false"，"1”，"0"のどれかで指定します。"true"，"1"を指定した場合，セキュリティヘッダ内のUsernameToken要素の有無をチェックし，存在しないときはポリシー違反としてSOAP Faultをスローします。"false"，"0"を指定した場合，セキュリティヘッダ内のUsernameToken要素の有無をチェックしません。"false"，0"を指定した場合，UsernameToken要素が存在しても処理しません。

boolean

1

コ
ン
テ
ン
ツ
Nonce
Nonce要素に関するポリシーチェックの情報を指定します。省略時はNonce要素に関するポリシーチェックが行われません。

－

0
または
1

Created
UsernameToken要素内のCreated要素に関するポリシーチェックの情報を指定します。省略時はCreated要素に関するポリシーチェックが行われません。

－

0
または
1

(9)　 Nonce

Nonce要素に関するポリシーチェックの情報を指定します。コンテンツはありません。

表C-59　Nonce

種別
要素
説明
データ型
指定
回数

属性
Required
UsernameToken要素内のNonce要素の有無をチェックするかどうかを"true"，"false"，"1”，"0"のどれかで指定します。"true"，"1"を指定した場合UsernameToken要素内のNonce要素の有無をチェックし，存在しない場合はポリシー違反としてSOAP Faultをスローします。"false"，"0"を指定した場合UsernameToken要素内のNonce要素の有無をチェックしません。"false"，"0"を指定した場合，Nonce要素が存在しても処理しません。

boolean

1

(10)　 Created

UsernameToken要素内のCreated要素に関するポリシーチェックの情報を指定します。

表C-60　Created

種別
要素
説明
データ型
指定
回数

属性
Required
UsernameToken要素内のCreated要素の有無をチェックするかどうかを"true"，"false"，"1”，"0"のどれかで指定します。"true"，"1"を指定した場合UsernameToken要素内のCreated要素の有無をチェックし，存在しない場合はポリシー違反としてSOAP Faultをスローします。"false"，"0"を指定した場合UsernameToken要素内のCreated要素の有無をチェックしません。"false"，"0"を指定した場合，Created要素が存在しても処理しません。

boolean

1

(11)　 BinarySecurityTokenConfig

バイナリセキュリティトークンに関するポリシーチェックの情報を指定します。

表C-61　BinarySecurityTokenConfig

種別
要素
説明
データ型
指定
回数

属性
－
－

－

－

コ
ン
テ
ン
ツ
TokenValidation
BinarySecurityToken要素の検証に関するポリシーチェックの情報を指定します。

－

1

(12)　 TokenValidation

BinarySecurityToken要素の検証に関するポリシーチェックの情報を指定します。

表C-62　TokenValidation

種別
要素
説明
データ型
指定
回数

属性
－
－

－

－

コ
ン
テ
ン
ツ
X509TokenValidation
X.509証明書の検証に関するポリシーチェックの情報を指定します。この要素が指定されている場合，受信したSOAPメッセージにX.509証明書のBinarySecurityToken要素（ValueTypeが"http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-x509-token-profile-1.0#X509v3"であるBinarySecurityToken要素）
が存在しない場合，ポリシー違反としてSOAP Faultをスローします。省略時はX.509証明書の検証に関するポリシーチェックが行われません。

－

0
または
1

(13)　 X509TokenValidation

X.509証明書の検証に関するポリシーチェックの情報を指定します。

表C-63　X509TokenValidation

種別
要素
説明
データ型
指定
回数

属性
－
－

－

－

コ
ン
テ
ン
ツ
AuthorityCertificateLocationList
X.509証明書の検証に関するポリシーチェックの情報を指定します。

－

1

(14)　 AuthorityCertificateLocationList

X.509証明書の検証に関するポリシーチェックの情報を指定します。

表C-64　AuthorityCertificateLocationList

種別
要素
説明
データ型
指定
回数

属性
－
－

－

－

コ
ン
テ
ン
ツ
AuthorityCertificateFile
X.509証明書の署名検証に使用する証明書ファイルの情報を指定します。

－

1以上

(15)　 AuthorityCertificateFile

X.509証明書の署名検証に使用する証明書ファイルの情報を指定します。コンテンツはありません。

表C-65　AuthorityCertificateFile

種別
要素
説明
データ型
指定
回数

属性
Name
X.509証明書の署名検証に使用する証明書ファイル名を指定します。

String

1

(16)　 VerificationConfig

署名に関するポリシーチェックの情報を指定します。VerificationConfig要素の指定があり，署名がされていないメッセージを受信した場合はポリシーチェック違反としてSOAP Faultをスローします。

表C-66　VerificationConfig

種別
要素
説明
データ型
指定
回数

属性
－
－

－

－

コ
ン
テ
ン
ツ
SignatureMethodList
署名アルゴリズムに関するポリシーチェックの情報を指定します。

－

1

CanonicalizationMethodList
正規化アルゴリズムに関するポリシーチェックの情報を指定します。

－

1

SignatureTarget
署名個所に関するポリシーチェックの情報を指定します。

－

1

(17)　 SignatureMethodList

署名アルゴリズムに関するポリシーチェックの情報を指定します。受信メッセージ中の署名アルゴリズムが，この要素のSignatureMethodタグで指定した，どのアルゴリズムとも一致しない場合は，ポリシーチェック違反としてSOAP Faultをスローします。

表C-67　SignatureMethodList

種別
要素
説明
データ型
指定
回数

属性
－
－

－

－

コ
ン
テ
ン
ツ
SignatureMethod
署名アルゴリズムに関する情報を指定します。省略時は署名アルゴリズムに関するポリシーチェックが行われません。

－

0以上

(18)　 SignatureMethod

署名アルゴリズムに関する情報を指定します。コンテンツはありません。

表C-68　SignatureMethod

種別
要素
説明
データ型
指定
回数

属性
Algorithm
受信側で処理可能な署名アルゴリズムのURIを指定します。

anyURI

1

(19)　 CanonicalizationMethodList

正規化アルゴリズムに関するポリシーチェックの情報を指定します。受信メッセージ中の正規化アルゴリズムが，この要素のCanonicalizationMethodタグで指定した，どのアルゴリズムとも一致しない場合は，ポリシーチェック違反としてSOAP Faultをスローします。

表C-69　CanonicalizationMethodList

種別
要素
説明
データ型
指定
回数

属性
－
－

－

－

コ
ン
テ
ン
ツ
CanonicalizationMethod
正規化アルゴリズムに関する情報を指定します。省略時は正規化アルゴリズムに関するポリシーチェックが行われません。

－

0以上

(20)　 CanonicalizationMethod

正規化アルゴリズムに関する情報を指定します。コンテンツはありません。

表C-70　CanonicalizationMethod

種別
要素
説明
データ型
指定
回数

属性
Algorithm
受信側で処理可能な正規化アルゴリズムのURIを指定します。

anyURI

1

(21)　 SignatureTarget

署名個所に関するポリシーチェックの情報を指定します。

表C-71　SignatureTarget

種別
要素
説明
データ型
指定
回数

属性
Part
署名個所となるSOAPエンベロープ中のエレメントを指定します。メッセージの署名個所がこの属性に指定した個所と異なる場合，ポリシー違反としてSOAP Faultをスローします。指定できる値は"Body"だけです。

enum

1

コ
ン
テ
ン
ツ
TransformMethodList
トランスフォームアルゴリズムに関する情報を指定します。省略時はトランスフォームアルゴリズムに関するポリシーチェックが行われません。

－

0
または
1

(22)　 TransformMethodList

トランスフォームアルゴリズムに関する情報を指定します。受信メッセージ中のトランスフォームアルゴリズムが，この要素のTransformMethodタグで指定した，どのアルゴリズムとも一致しない場合は，ポリシーチェック違反としてSOAP Faultをスローします。

表C-72　TransformMethodList

種別
要素
説明
データ型
指定
回数

属性
－
－

－

－

コ
ン
テ
ン
ツ
TransformMethod
トランスフォームアルゴリズムのアルゴリズム識別子を指定します。省略時はトランスフォームアルゴリズムに関するポリシーチェックが行われません。

anyURI

0以上

(23)　 TransformMethod

トランスフォームアルゴリズムのアルゴリズム識別子を指定します。コンテンツはありません。

表C-73　TransformMethod

種別
要素
説明
データ型
指定
回数

属性
Algorithm
受信側で処理可能なトランスフォームアルゴリズムのURIを指定します。

anyURI

1

(24)　 DecryptionPolicyConfig

復号化に関するポリシーチェックの情報を指定します。DecryptionConfig要素の指定があり，暗号化がされていないメッセージを受信した場合は，ポリシーチェック違反としてSOAP Faultをスローします。

表C-74　DecryptionPolicyConfig

種別
要素
説明
データ型
指定
回数

属性
－
－

－

－

コ
ン
テ
ン
ツ
DecryptionTarget
復号化個所に関するポリシーチェックの情報を指定します。

－

1

(25)　 DecryptionTarget

復号化個所に関するポリシーチェックの情報を指定します。

表C-75　DecryptionTarget

種別
要素
説明
データ型
指定
回数

属性
Part
復号化する個所となるSOAPエンベロープ中のエレメントを指定します。メッセージの復号化個所がこの属性に指定した個所と異なる場合ポリシー違反としてSOAP Faultをスローします。指定できる値は"Body"だけです。

enum

1

Type
復号化する個所の暗号化タイプを指定します。指定可能な値は"Content"だけです。

enum

1

コ
ン
テ
ン
ツ
DecryptionConfig
復号化に関するポリシーチェックの情報を指定します。

－

1

(26)　 DecryptionConfig

復号化に関するポリシーチェックの情報を指定します。DecryptionConfig要素の指定があり，暗号化がされていないメッセージを受信した場合は，ポリシーチェック違反としてSOAP Faultをスローします。

表C-76　DecryptionConfig

種別
要素
説明
データ型
指定
回数

属性
－
－

－

－

コ
ン
テ
ン
ツ
ContentsDecryption
メッセージ内容の復号化に関するポリシーチェックの情報を指定します。

－

1

KeyDecryption
復号に使用する鍵の復号化に関するポリシーチェックの情報を指定します。EncryptionTypeが"ContentsEncryption"の場合は不要です。

－

1

(27)　 ContentsDecryption

メッセージ内容の復号化に関するポリシーチェックの情報を指定します。

表C-77　ContentsDecryption

種別
要素
説明
データ型
指定
回数

属性
－
－

－

－

コ
ン
テ
ン
ツ
DecryptionMethodList
復号化個所の暗号アルゴリズムに関するポリシーチェックの情報を指定します。省略時は復号化個所の暗号アルゴリズムに関するポリシーチェックが行われません。

－

0
または
1

(28)　 DecryptionMethodList

復号化個所の暗号アルゴリズムに関するポリシーチェックの情報を指定します。受信メッセージ中の暗号アルゴリズムが，この要素のDecryptionMethodタグで指定した，どのアルゴリズムとも一致しない場合は，ポリシーチェック違反としてSOAP Faultをスローします。

表C-78　DecryptionMethodList

種別
要素
説明
データ型
指定
回数

属性
－
－

－

－

コ
ン
テ
ン
ツ
DecryptionMethod
復号化に用いる暗号アルゴリズムに関する情報を指定します。省略時は復号化に用いる暗号アルゴリズムに関するポリシーチェックが行われません。

－

0以上

(29)　 DecryptionMethod

復号化に用いる暗号アルゴリズムに関する情報を指定します。コンテンツはありません。

表C-79　DecryptionMethod

種別
要素
説明
データ型
指定
回数

属性
Algorithm
受信側で処理可能な暗号アルゴリズムのURIを指定します。

anyURI

1

(30)　 KeyDecryption

復号に使用する鍵の復号化に関するポリシーチェックの情報を指定します。

表C-80　KeyDecryption

種別
要素
説明
データ型
指定
回数

属性
－
－

－

－

コ
ン
テ
ン
ツ
DecryptionMethodList
復号化個所に関するポリシーチェックの情報を指定します。省略時は復号化個所に関するポリシーチェックが行われません。

－

0
または
1

(31)　 TimestampConfig

タイムスタンプに関するポリシーチェックの情報を指定します。

表C-81　TimestampConfig

種別
要素
説明
データ型
指定
回数

属性
－
－

－

－

コ
ン
テ
ン
ツ
Created
タイムスタンプ要素のCreated要素に関するポリシーチェックの情報を指定します。省略時はCreated要素に関するポリシーチェックが行われません。

－

0
または
1

Expires
タイムスタンプ要素のExpires要素に関するポリシーチェックの情報を指定します。省略時はExpires要素に関するポリシーチェックが行われません。

－

0
または
1

(32)　 Created

タイムスタンプ要素のCreated要素に関するポリシーチェックの情報を指定します。コンテンツはありません。

表C-82　Created

種別
要素
説明
データ型
指定
回数

属性
Required
タイムスタンプ要素内のCreated要素の有無をチェックするかどうかを"true"，"false"，"1”，"0"のどれかで指定します。"true"，"1"を指定した場合タイムスタンプ要素内のCreated要素の有無をチェックし，存在しない場合はポリシー違反としてSOAP Faultをスローします。"false"，"0"を指定した場合タイムスタンプ要素内のCreated要素の有無をチェックしません。

boolean

1

(33)　 Expires

タイムスタンプ要素のExpires要素に関するポリシーチェックの情報を指定します。コンテンツはありません。

表C-83　Expires

種別
要素
説明
データ型
指定
回数

属性
Required
タイムスタンプ要素内のExpires要素の有無をチェックするかどうかを"true"，"false"，"1”，"0"のどれかで指定します。"true"，"1"を指定した場合タイムスタンプ要素内のExpires要素の有無をチェックし，存在しない場合はポリシー違反としてSOAP Faultをスローします。"false"，"0"を指定した場合タイムスタンプ要素内のExpires要素の有無をチェックしません。

boolean

1

(34)　 ResponseReceiverConfig

レスポンスメッセージ受信時の設定を指定します。

表C-84　ResponseReceiverConfig

種別
要素
説明
データ型
指定
回数

属性
－
－

－

－

コ
ン
テ
ン
ツ
ReceiverPortConfig
Webサービスセキュリティポリシー定義を適用するSOAPサービスエンドポイントの情報を指定します。

－

1以上

付録D　用語解説

このマニュアルで使用している用語の意味を説明します。

（英数字）

JAAS

J2SEが提供する標準的なユーザー認証用のAPIです。JAASのAPIによるユーザー認証をJAAS認証といいます。

SOAP

分散ネットワーク環境の中でXMLベースの情報を交換するために使用する通信プロトコルの名称です。

SOAPアプリケーション

SOAPおよびWSDLの技術を利用して開発し，ネットワークを利用して公開，実行できるアプリケーションのことをいいます。SOAPアプリケーションでは，クライアント側に実装された処理によって，SOAPサービスを呼び出し，提供されるサービスを利用します。

SOAPアプリケーション開発支援機能

Cosminexusが提供する，SOAPアプリケーションを開発するための機能です。SOAPアプリケーション開発支援機能では，ウィザードを使用しながらSOAPアプリケーションを開発できます。

SOAPサービス

SOAPアプリケーションを形成するプログラムのうち，サーバ側に配置して，クライアントから要求された処理を実行するプログラム（サービス）のことをいいます。

SOAP通信基盤

Cosminexusが提供する，SOAPアプリケーションを実行し，SOAPによる通信を実現するための環境です。

SOAPヘッダ

SOAPメッセージの要素です。SOAPヘッダでは，メッセージ処理のあて先，およびメッセージ処理が必要かどうかを指定します。

SOAPボディ

SOAPメッセージの要素です。SOAPボディに送信するメッセージの内容を記述します。

SOAPメッセージ

SOAPプロトコルでオブジェクト間の送受信に使用するメッセージです。SOAPメッセージは，SOAPエンベロープ，SOAPヘッダ，およびSOAPボディという要素で構成されます。

Webサービス

Web関連の技術を利用して，ネットワークを介して提供されるサービスです。Webサービスの基礎となる技術には，SOAP，WSDL，およびUDDIなどがあります。

Webサービスセキュリティ

このマニュアルでは，WS-Security仕様に基づいた，SOAPメッセージに対するセキュリティ技術をWebサービスセキュリティと呼びます。

Webサービスセキュリティ機能

Cosminexusが提供する，Webサービスセキュリティを実現するための機能です。Webサービスセキュリティ機能は，Cosminexus Web Services - Securityが提供する定義ファイルを設定することによって，使用できます。

Webサービスセキュリティ機能定義ファイル

Cosminexusが提供するWebサービスセキュリティ機能の詳細を定義するためのXMLファイルです。Webサービスセキュリティ機能定義ファイルは，サーバとクライアントの両方に配置します。

Webサービスセキュリティポリシー定義ファイル

Webサービスセキュリティ機能を使用する場合に従うポリシーを定義するためのXMLファイルです。Webサービスセキュリティポリシー定義ファイルは，サーバとクライアントの両方に配置します。

WS-Security

OASISが規定している，Webサービスのセキュリティに関する仕様書です。WS-Securityは，XMLセキュリティの技術を利用しています。

XMLセキュリティ

このマニュアルでは，W3Cが規定しているXML署名およびXML暗号を総称してXMLセキュリティと呼びます。

（カ行）

環境設定ファイル

サーバやクライアントの実行環境に合わせて，必要な設定を変更するためのプロパティファイルです。環境設定ファイルには，キーストアファイルや証明書ファイルの格納場所などを記述します。

共通鍵

共通鍵暗号で使用する，決められた2者間だけで共有する鍵（secret key）です。共通鍵暗号では，共通鍵でデータを復号化します。共通鍵は，決められた2者が安全に管理します。

公開鍵

公開鍵暗号で使用する，データの暗号化または電子署名を検証するのための鍵です。公開鍵は，通常ネットワーク上などで公開されています。データを暗号化して送信する場合，送信者は受信者の公開鍵を使用してデータを暗号化します。また，受信した電子署名を検証する場合は，受信者は送信者の公開鍵を使用して電子署名を検証します。

コマンドラインJavaアプリケーション

コマンドラインから起動して使用するJavaアプリケーションです。

（サ行）

証明書

オープンな企業情報システム上で情報をやり取りするときに，通信相手が本人であることを証明するための電子的な情報です。暗号技術を用いることで，他人が成り済ますことができないようになっています。Webサービスセキュリティ機能では，X.509証明書を扱えます。

セキュリティトークン要素

WS-Securityで規定されている，セキュリティトークンに関する要素です。Webサービスセキュリティ機能で扱うセキュリティトークン要素は，UsernameToken要素とBinarySecurityToken要素です。

セキュリティヘッダ

SOAPヘッダに含まれるwsse:Securityという名称の要素です。セキュリティヘッダはセキュリティ要素で構成されます。

セキュリティ要素

SOAPメッセージに含まれる，セキュリティに関する要素です。このマニュアルでは，セキュリティトークン要素，署名要素，暗号化要素などを総称してセキュリティ要素と呼びます。

（タ行）

デプロイ定義ファイル

Webサービスセキュリティ機能を利用するために必要な情報を読み込む処理を定義するXMLファイルです。デプロイ定義ファイルには，サーバ用のファイルとクライアント用のファイルの2種類があります。

（ハ行）

秘密鍵

公開鍵暗号で使用する，データの復号化または電子署名を作成するのための鍵（private key）です。非公開鍵ともいいます。秘密鍵は，その所有者が安全に管理します。

暗号化されたデータを受信した場合，受信者は自分の秘密鍵を使用してデータを復号化します。また，送信するデータに電子署名を付加する場合は，送信者は自分の秘密鍵を使用し電子署名を作成します。

索引

[Ａ][Ｂ][Ｃ][Ｄ][Ｅ][Ｆ][Ｇ][Ｈ][Ｊ][Ｋ][Ｌ][Ｍ][Ｎ][Ｐ][Ｒ][Ｓ][Ｔ][Ｕ][Ｖ][Ｗ][Ｘ]
[ア行][カ行][サ行][タ行][ナ行][ハ行][マ行][ラ行]

(英字)

(Ａ)

AES-128

AES-128鍵ラッピング（128bit鍵）

AES-192

AES-192鍵ラッピング

AES-256

AES-256鍵ラッピング（256bit鍵）

AuthenticationConfig

AuthnMethod

AuthorityCertificateFile

AuthorityCertificateLocationList

(Ｂ)

base64（エンコード）

base64（変換アルゴリズム）

BinarySecurityTokenConfig

BinarySecurityTokenConfig

BindingConfig

(Ｃ)

Callbackオブジェクトの生成について

CanonicalizationMethod

CanonicalizationMethod

CanonicalizationMethodList

CanonicalizeParam

Canonical XML（コメント付き）

Canonical XML（コメントなし）

Certificate

ConfigurationIndex

ContentsDecryption

ContentsEncryption

Created

Created

(Ｄ)

DecryptionConfig

DecryptionConfig

DecryptionKeyLocationList

DecryptionMethod

DecryptionMethodList

DecryptionPolicyConfig

DecryptionSecretKeyLocationList

DecryptionTarget

Diffie-Hellman Key Agreement

Diffie-Hellman Key Values

DirectReference

DSAwithSHA1

(Ｅ)

EncryptionConfig

EncryptionMethod

EncryptionTarget

Enveloped Signature

Exclusive Canonical XML（コメント付き）

Exclusive Canonical XML（コメントなし）

Expires

Expires

(Ｆ)

FaultActor

FaultCode

FaultCode

FaultDetails

FaultString

Fresh-Time-Limit

(Ｇ)

getCreated

getId

getMessage

getNonce

getPassword

getPasswordType

getRole

getUsername

getWSSElementProxy（実装クラスから生成）

getWSSElementProxy（スタブクラスから生成）

getWSSElementProxy（メッセージクラスから生成）

getWSSUsernameToken

GlobalConfig

(Ｈ)

HMAC-SHA1

(Ｊ)

JAAS〔用語解説〕

JAAS認証

JAASログインモジュールの実装時の注意

(Ｋ)

KDCGA0001-E

KDCGA9000-E

KDCGAで始まるメッセージ

KDCGC0001-E

KDCGC0002-E

KDCGC0003-W

KDCGC0004-W

KDCGCで始まるメッセージ

KDCGF0001-E

KDCGF0002-E

KDCGF0003-E

KDCGF0004-E

KDCGF0005-E

KDCGF0006-E

KDCGF0007-E

KDCGF0008-E

KDCGF0009-E

KDCGFで始まるメッセージ

KDCGJ0001-E

KDCGK0001-I

KDCGK0010-E

KDCGK0011-E

KDCGK0012-E

KDCGK0013-E

KDCGK0100-E

KDCGK0101-E

KDCGK9000-E

KDCGKで始まるメッセージ

KDCGO0001-I

KDCGO0002-E

KDCGO0010-E

KDCGO0011-E

KDCGO0012-E

KDCGO9000-E

KDCGOで始まるメッセージ

KDCGP0001-E

KDCGP0002-E

KDCGP1001-E

KDCGP1002-E

KDCGP1003-E

KDCGP1004-E

KDCGP9000-E

KDCGPで始まるメッセージ

KDCGS0001-E

KDCGS0004-E

KDCGS0005-E

KDCGS0007-E

KDCGS0008-E

KDCGS0009-E

KDCGS0010-E

KDCGS0011-E

KDCGS0012-E

KDCGS0013-E

KDCGS0014-E

KDCGS0015-E

KDCGS1002-E

KDCGS1003-E

KDCGS9000-E

KDCGSで始まるメッセージ

KDCGW0001-E

KDCGW0002-E

KDCGW0003-E

KDCGW9000-E

KDCGWで始まるメッセージ

KeyDecryption

KeyEncryption

KeyEncryptionKey

KeyIdentifier

KeyLocator

KeyReferenceConfig

KeyStore

(Ｌ)

LoginContext

(Ｍ)

Max-Clock-Skew

(Ｎ)

newWSSElementProxy（実装クラスから生成）

newWSSElementProxy（スタブクラスから生成）

newWSSElementProxy（メッセージクラスから生成）

Nonce

(Ｐ)

Password

PolicyConfig

PrivateKey

(Ｒ)

ReceiverPortConfig

ReceiverPortConfig

removeWSSUsernameToken

RequestReceiverConfig

RequestReceiverConfig

RequestSenderConfig

ResponseReceiverConfig

ResponseReceiverConfig

ResponseSenderConfig

RoleConfig

RSA-OAEP

RSA-v1.5

RSAwithSHA1

(Ｓ)

SecretKeyFile

SecretKeyLocationList

SecurityConfig

SecurityTokenConfig

SenderPortConfig

setId

setPassword

setPasswordType

setRole

setUsername

setWSSUsernameToken

SHA1

SignatureConfig

SignatureKey

SignatureKeyInfo

SignatureMethod

SignatureMethod

SignatureMethodList

SignatureTarget

SignatureTarget

SOAP〔用語解説〕

SOAPFault形式

SOAPアプリケーション〔用語解説〕

SOAPアプリケーション開発支援機能〔用語解説〕

SOAPサービス〔用語解説〕

SOAP通信基盤〔用語解説〕

SOAPヘッダ〔用語解説〕

SOAPボディ〔用語解説〕

SOAPメッセージ〔用語解説〕

STR Dereference

(Ｔ)

TimestampConfig

TimestampConfig

Timestamp要素を使用する場合

TokenValidation

Transform

TransformMethod

TransformMethodList

TransformParam

Triple DES

TRIPLEDES鍵ラッピング

(Ｕ)

Username

UsernameTokenAuthnConfig

UsernameTokenConfig

UsernameTokenConfig

(Ｖ)

VerificationConfig

VerificationConfig

VerificationKeyLocationList

VerificationKeyStore

(Ｗ)

Webサービス〔用語解説〕

Webサービスセキュリティ〔用語解説〕

Webサービスセキュリティ機能〔用語解説〕

Webサービスセキュリティ機能定義ファイル

Webサービスセキュリティ機能定義ファイル〔用語解説〕

Webサービスセキュリティ機能定義ファイルの運用について

Webサービスセキュリティ機能の実装手順

WebサービスセキュリティとSOAPとの関係

WebサービスセキュリティとXMLセキュリティとの関係

Webサービスセキュリティとは

Webサービスセキュリティポリシー定義ファイル

Webサービスセキュリティポリシー定義ファイル〔用語解説〕

Webサービスセキュリティポリシー定義ファイルの運用について

WS-Security〔用語解説〕

WSSElementProxyFactoryクラス（セキュリティ項目操作クラスの生成）

WSSElementProxyクラス（セキュリティ項目の操作）

WSSExceptionクラス（例外情報の取得）

WSSUsernameToken.PasswordTypeインタフェース（PasswordType要素の操作）

WSSUsernameTokenクラス（UsernameToken要素の操作）

(Ｘ)

X509TokenValidation

XML Decryption Transformation

XMLセキュリティ〔用語解説〕

XPath

XPath Filter 2.0

XSLT

(ア行)

(あ)

暗号化／復号化機能を設定する

暗号化する個所をID属性で指定する

暗号化する個所をパート名で指定する

(い)

移行手順〔クライアント側がWebアプリケーションの場合〕

移行手順〔クライアント側がコマンドラインJavaアプリケーションの場合〕

移行手順〔サーバ側の場合〕

インタフェースおよびクラスの一覧

(カ行)

(か)

開発に必要な製品

環境設定ファイル〔用語解説〕

環境設定ファイルの記述規則

環境設定ファイルの設定項目

完全性

(き)

共通鍵〔用語解説〕

共通鍵生成コマンド（CWSSCreateSecretKey）

(く)

クライアント側がWebアプリケーションの場合の実装手順

クライアント側がコマンドラインJavaアプリケーションの場合の実装手順

(こ)

公開鍵〔用語解説〕

コマンドラインJavaアプリケーション〔用語解説〕

コンストラクタ

(サ行)

(さ)

サーバ側の実装手順

サポート範囲

WS-Security仕様

XML暗号標準仕様

XML署名標準仕様

(し)

実行環境に合わせて設定を変更する

実行に必要な製品

出力先

出力のタイミング

証明書〔用語解説〕

署名付与／検証機能を設定する

署名を付与する個所をID属性で指定する

署名を付与する個所をパート名で指定する

(せ)

セキュリティ機能を組み合わせて使用する場合

セキュリティトークン要素〔用語解説〕

セキュリティヘッダ

セキュリティ要素〔用語解説〕

前提OS

開発時

実行時

前提プログラム

開発時

実行時

(タ行)

(て)

定義ファイル構文チェックコマンド（CWSSConfCheck）

定義ファイルに関する注意事項

定義ファイルの構文をチェックする

定義ファイルの設定

定義ファイルを編集する

デプロイ定義ファイル〔用語解説〕

(と)

トレースの重要度

トレースの出力先

トレースの内容

トレースを収集する

(ナ行)

(に)

認証

認証機能を設定する

(ハ行)

(ひ)

秘匿性

秘密鍵〔用語解説〕

(ふ)

プレフィックス

プログラム構成例

開発時

実行時

(マ行)

(め)

メッセージ

形式

内容

メッセージID

メッセージ種別

メッセージに有効期限を設定する

(ラ行)

(ろ)

ログイン構成ファイルの配置について

■ 商標類

AIXは，米国における米国International Business Machines Corp.の登録商標です。
AMD, AMD Opteronおよびその組み合わせは，Advanced Micro Devices, Inc.の商標です。
HP-UXは，米国Hewlett-Packard Companyのオペレーティングシステムの名称です。
Intelは，Intel Corporationの会社名です。
Itaniumは，アメリカ合衆国および他の国におけるインテル コーポレーションまたはその子会社の登録商標です。
Java及びすべてのJava関連の商標及びロゴは，米国及びその他の国における米国Sun Microsystems,Inc.の商標または登録商標です。
JDKは，米国 Sun Microsystems, Inc. の米国およびその他の国における商標または登録商標です。
Linuxは，Linus Torvaldsの米国およびその他の国における登録商標あるいは商標です。
Microsoftは，米国およびその他の国における米国Microsoft Corp.の登録商標です。
Red Hatは，米国およびその他の国でRed Hat, Inc. の登録商標若しくは商標です。
SOAP（Simple Object Access Protocol）は，分散ネットワーク環境においてXMLベースの情報を交換するための通信プロトコルの名称です。
Solarisは，米国Sun Microsystems, Inc. の米国およびその他の国における商標または登録商標です。
Sun，Sun Microsystems，Javaは，米国Sun Microsystems, Inc. の米国およびその他の国における商標または登録商標です。
UNIXは，X/Open Company Limited が独占的にライセンスしている米国ならびに他の国における登録商標です。
Windowsは，米国およびその他の国における米国Microsoft Corp.の登録商標です。
Windows Serverは，米国Microsoft Corporationの米国及びその他の国における登録商標です。
Windows Vistaは，米国Microsoft Corporationの米国及びその他の国における登録商標です。
This product includes software developed by the Apache Software Foundation (http://www.apache.org/).
プログラムプロダクト「P-9D43-7K71，P-9D43-7S71」には，米国Sun Microsystems,Inc.が著作権を有している部分が含まれています。
プログラムプロダクト「P-9D43-7K71，P-9D43-7S71」には，UNIX System Laboratories,Inc.が著作権を有している部分が含まれています。