問題タブ [xml-dsig]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
1812 参照

xml - xs:integer 型として多数の検証に失敗する

次の XML を検証しようとすると、次のようになります。

xmldsig-core-schema.xsdスキーマ (インターネットで簡単に見つけることができます) に対して、次の検証エラーが発生します。

ただし、インターネットで見つけた多くの投稿により、 xs:integer タイプは無制限の文字数をサポートする必要があると思いました。それで、私の検証は間違った動作をしていますか? 私は現在、2 つの異なる検証手法を試しました。1 つ目は .NET System.Xml ライブラリ (XmlReader)、2 つ目は Notepad++ 用の XML プラグインです。どちらも同じメッセージで失敗します。どちらも間違っていますか?または、実際には xs:integer 値が取り得るサイズに制限がありますか?

0 投票する
0 に答える
239 参照

wcf - ユーザー名セキュリティを備えた WCF サービスは、追加の ws-security ヘッダーを含むメッセージを受け入れる必要があります。出来ますか?

従来のユーザー名とパスワードのメッセージ セキュリティを備えた wcf サービスがあります。トランスポート レベルでは、このサービスには https があります

典型的なバインディング

しかし。ここで、この交換にクライアント署名を追加する必要があります。この署名には標準の wsse ヘッダーを使用することにしました。例:

しかし、WCF は複数の wsse ヘッダーを処理したくありません。「メッセージのセキュリティを検証中にエラーが発生しました」と表示されます。追加情報なしで、自分のコードの前にあります。

サーバー側で署名を取得し、ユーザー名の検証が機能するようにすることはできますか?

0 投票する
0 に答える
2511 参照

cxf - CXF WS-Security - X509IssuerSerial 検証が失敗する

CXF WS-Security と署名検証の作業中に問題が発生しました。WSS4JInInterceptor要素の署名を検証するためにサーバー側で使用しますBody
-キー識別子タイプとしてBinarySecurityToken( ) を使用すると、すべて正常に動作します。 - ( ) をキー識別子として使用すると、サーバー側での署名検証に失敗します。 これはサーバー側の設定です:DirectReference
X509IssuerSerialIssuerSerial

この SOAPHeader で SOAPEnvelope を (クライアント側から) 送信すると:

SOAPFault を取得します。

デバッグ ログ出力では、あまり情報が得られませんでした。しかし、デバッグ中に、org.apache.wss4j.dom.processor.SignatureProcessorこの時点で失敗することがわかりました。

wss4j-ws-security-dom-2.1.0 で例外をスローするのは 197 行目です。これは、証明書と publicKey が null であることを意味します。これにより、最初から十分に考えていなかったという結論に至りました。署名を検証できる証明書がないことに気づきませんでした。また、私の結論は、X509IssuerSerial の場合、受信側 (この場合はサーバー) 側に証明書がある場合にのみ署名を検証できるということです。
誰かがより良い説明をしていますか?

0 投票する
1 に答える
4556 参照

c# - XmlDsigExcC14NTransform および InclusiveNamespaces を使用した XML 署名の検証に関する問題

署名を検証する必要がある XML ドキュメントがあります。SignedInfo 要素には、アルゴリズム「http://www.w3.org/2001/10/xml-exc-c14n#」を指定する要素 CanonicalizationMethod があり、次のように PrefixList 属性が設定された子要素 InclusiveNamespaces もあります。

次のコードを使用して、C14Transform オブジェクトを作成します。

属性"soapenv"の由来はどこにありますか。PrefixList

上記の XML を (空白を無視して) 正規化すると、次のようになります ( xmlns:soapenv="..."2 行目の部分に注意してください)。

私が抱えている問題はxmlns:soapenv="..."、正規化時にその部分が含まれず、署名の検証が失敗することです。

プログラムで挿入することでこれを回避できますが、PrefixList コンテンツにはさまざまなバリエーションがあるため、これは面倒です。