this answer中给出的WIF代码示例创建了一个签名的SAML2断言。
最终的xml具有以下结构(我已经删除了所有值,因为它们对这个问题并不重要):
<Assertion>
<Issuer></Issuer>
<Signature>
<SignedInfo>
</SignedInfo>
<SignatureValue></SignatureValue>
<KeyInfo>
</KeyInfo>
</Signature>
<Subject>
<NameID></NameID>
<SubjectConfirmation/>
</Subject>
<Conditions/>
</Assertion>
但是对于特定的测试场景,我需要在没有<KeyInfo>
元素的情况下创建它。
WIF Saml2Assertion类可以实现吗?我必须提供SigningCredentials
,但到目前为止还没有找到只是签名的方法,但不包括<KeyInfo>
(强制收件人已经拥有证书)。
assertion.SigningCredentials = clientSigningCredentials;
return new Saml2SecurityToken(assertion);
同样,愚蠢的测试场景,但这是我想要模拟的东西,因为我认为这是标准支持。