検索

第275章 XML Security DataFormat

download PDF

Camel バージョン 2.0 で利用可能

XMLSecurity Data Format を使用すると、Document、Element、および Element Content レベルでの XML ペイロードの暗号化と復号が容易になります(XPath を使用した同時マルチノード暗号化/復号化を含む)。XML 署名仕様を使用してメッセージに署名するには、Camel XML Security コンポーネントを参照してください。

暗号化機能は、Apache XML Security(Santuario)プロジェクトを使用してサポートされる形式に基づいています。対称暗号化/復号化は、現在 Triple-DES および AES(128、192、および 256)暗号化形式を使用してサポートされます。必要に応じて、追加形式を簡単に追加できます。この機能により、Camel ユーザーはルートでディスパッチまたは受信中にペイロードを暗号化/復号化できます。

Camel 2.9 で利用可能
は、XMLSecurity Data Format は非対称鍵の暗号化をサポートし
ます。この暗号化モデルでは、対称鍵が生成され、XML コンテンツの暗号化または復号の実行に使用されます。この「コンテンツ暗号化キー」は、受信者の公開鍵を「鍵暗号化キー」として利用する非対称暗号化アルゴリズムを使用して暗号化されます。非対称鍵暗号化アルゴリズムを使用すると、受信者の秘密鍵のホルダーのみが生成された対称暗号化鍵にアクセスできるようになります。そのため、秘密鍵のホルダーのみがメッセージをデコードできます。XMLSecurity Data Format は、非対称鍵の暗号化を使用してメッセージコンテンツと暗号化キーを暗号化および復号化するのに必要なすべてのロジックを処理します。

XMLSecurity Data Format は、暗号化のコンテンツを選択する XPath クエリーを処理する際の名前空間のサポートも改善しました。namespace 定義マッピングは、データ形式設定の一部として含めることができます。これにより、XPath クエリーとターゲット xml ドキュメントの接頭辞の値が同等の文字列でなくても、true 名前空間の照合が可能になります。

275.1. XMLSecurity オプション

XML セキュリティーデータ形式は、以下に示す 12 個のオプションをサポートします。

NameデフォルトJava タイプ説明

xmlCipherAlgorithm

TIPLEDES

文字列

XML メッセージコンテンツの暗号化/復号化に使用する暗号アルゴリズム。XMLCipher.TRIPLEDES XMLCipher.AES_128 XMLCipher.AES_128_GCM XMLCipher.AES_192 XMLCipher.AES_192_GCM XMLCipher.AES_256 XMLCipher.AES_256_GCM XMLCipher.SEED_128 XMLCipher.CAMELLIA_128 XMLCipher.CAMELLIA_192 XMLCipher.CAMELLIA_256 XMLCipher.CAMELLIA_192 XMLCipher.CAMELLIA_256 は MLCipher.TRIPLEDES

passPhrase

 

文字列

コンテンツを暗号化/復号化するために passPhrase として使用される文字列。passPhrase を指定する必要があります。passPhrase が指定されていない場合は、デフォルトの passPhrase が使用されます。passPhrase は、適切な暗号化アルゴリズムと併用する必要があります。たとえば TRIPLEDES を使用する場合、PassPhase を別の 24 バイトキーのみにすることができます。

secureTag

 

文字列

暗号化/復号化用に選択した XML 要素への XPath 参照。タグが指定されていない場合、ペイロード全体が暗号化/復号化されます。

secureTagContents

false

ブール値

XML 要素が暗号化されるかどうか、または XML 要素 false = 要素レベルの内容を指定するブール値。

keyCipherAlgorithm

RSA_OAEP

文字列

非対称鍵の暗号化/復号化に使用する暗号アルゴリズム。使用できる選択肢は XMLCipher.RSA_v1dot5 XMLCipher.RSA_OAEP XMLCipher.RSA_OAEP_11 です。デフォルト値は XMLCipher.RSA_OAEP です。

recipientKeyAlias

 

文字列

非対称鍵の暗号化または復号化の実行時に KeyStore から受信側の公開鍵または秘密鍵を取得する際に使用されるキーエイリアス。

keyOrTrustStoreParametersId

 

文字列

KeyStore インスタンスを参照してレジストリーで検索します。これは、送信者の trustStore または受信者の keyStore を表す KeyStore インスタンスを作成し、読み込む設定オプションに使用されます。

keyPassword

 

文字列

KeyStore から秘密鍵を取得するために使用されるパスワード。このキーは非対称復号化に使用されます。

digestAlgorithm

SHA1

文字列

RSA OAEP アルゴリズムで使用するダイジェストアルゴリズム。使用できる選択肢は XMLCipher.SHA1 XMLCipher.SHA256 XMLCipher.SHA512 です。デフォルト値は XMLCipher.SHA1 です。

mgfAlgorithm

MGF1_SHA1

文字列

RSA OAEP アルゴリズムで使用する MGF アルゴリズム。EncryptionConstants.MGF1_SHA1 EncryptionConstants.MGF1_SHA256 EncryptionConstants.MGF1_SHA512 を選択できます。デフォルト値は EncryptionConstants.MGF1_SHA1 です。

addKeyValueForEncryptedKey

true

ブール値

暗号化キーの構造で KeyValue としてセッションキーの暗号化に使用される公開鍵を追加するかどうか。

contentTypeHeader

false

ブール値

データフォーマットがデータ形式を実行できる場合に、データ形式がデータ形式の型で Content-Type ヘッダーを設定するかどうか。たとえば、XML へのデータフォーマットの application/xml、または JSon へのデータフォーマットの application/json など。

275.1.1. キー暗号アルゴリズム

Camel 2.12.0 より、デフォルトの キー暗号アルゴリズム は XMLCipher.RSA_v1dot5 ではなく XMLCipher.RSA_OAEP になりました。さまざまな攻撃により、XMLCipher.RSA_v1dot5 の使用は推奨されません。RSA v1.5 を鍵暗号アルゴリズムとして使用する要求は、鍵暗号アルゴリズムとして明示的に設定されていない限り拒否されます。

Red Hat logoGithubRedditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

© 2024 Red Hat, Inc.