2

我正在尝试验证签名的 XML SAML 响应。它在 XML 中包含一个欺骗性证书。

我在 PEM 文件中有已知的真实证书。

当我跑

xmlsec1 --verify --pubkey-cert-pem  pubkey-real.pem \
--id-attr:ID urn:oasis:names:tc:SAML:2.0:assertion:Assertion \
--node-id DaavCk888T6_KR-Rtdm52CZSceG saml-req-spoofed.xml

它正确地验证了它!它使用欺骗 SAML 请求中的证书,而不是我在命令行上传递的已知好的证书。我知道这一点,因为当我添加--print-debug到参数时,它会输出欺骗的证书信息。

有没有办法强制xmlsec1忽略 XML 文件中的证书并强制它使用我在命令行上传递的证书?

xmlsec1在 Mac 上运行 1.2.20。

4

1 回答 1

0

经过一番挣扎,我发现您可以尝试添加--enabled-key-data,例如:

--enabled-key-data rsa 或者 --enabled-key-data x509

要么那些应该工作。你也可以试试

xmlsec1 --list-key-data看看你可以选择的那些。

于 2020-02-26T23:27:47.160 回答