1

いくつかのxmlを取得してからxml署名を検証しようとするコードがあります。この投稿によると、SignedXmlタイプの検証方法では、xml署名の検証を実行するために完全な信頼が必要です。コードをサンドボックスで実行する必要があるため、完全な信頼が得られないため、セキュリティ例外がスローされます。

この場合、xml署名を検証する他の方法はありますか(できればサードパーティのソフトウェアを購入する必要はありません)?

4

2 に答える 2

1

これは不可能のようです。私の回避策は、署名されたxmlに依存することを避け、ハッシュを追加することでした。これははるかに安全性が低くなりますが、完全信頼コードを使用せずにできる最善の方法です。

于 2011-12-14T00:22:35.577 に答える
0

を使用する必要がない場合は、これを行う方法があると思いますXmlResolver

MSDNのドキュメントには、「。NET Frameworkのバージョン1.1では、XmlResolverを指定するには、呼び出し元が完全に信頼されている必要があります」と記載されています。.NET 4.5を使用した中程度の信頼環境で実行しており、正常に設定できXmlResolverます。XMLドキュメント内の外部参照を解決する必要がないことを知っていたので(これがここで何を意味するかについての説明)、をに設定しても問題ありませんでしSignedXml.Resolvernull。私の場合、これで問題が修正さSignedXmlれ、共有ホスティング環境(GoDaddy)での使用が可能になりました。

SecureXmlResolver使用したい場合はが必要になることに注意してくださいFullTrust

于 2013-06-06T11:22:04.493 に答える