在对也具有已签名断言的SAML响应进行签名时,我是否应该:
A)生成不带断言签名的响应签名。然后在生成两个签名后注入断言签名。
B)生成断言签名,并在生成响应签名时包含该签名。
C)还有其他的吗?
发布于 2011-08-16 12:54:28
SAML太糟糕了,每次我读到答案时,它们几乎都是正确的,下面是提取的正确算法:
签名XML片段的规范版本( Assertion.
XML片段的
就是这样。SAML是非常糟糕的。有许多细微的细节使得实现SAML成为一场噩梦(比如计算XML子集的规范形式(断言),而且XML文档的XML版本也不包括在内)。
我已经完成了我的实现,我希望再也不会有这样的痛苦了。
发布于 2011-08-06 05:06:48
我相信正确的答案是B)。首先对断言进行签名,然后对包含已签名断言数据的响应进行签名。但是,如果单个颁发者/实体(STS/IDP/etc)同时对两者进行签名,那么就没有真正的理由对断言进行签名了吗?只需对协议消息/响应进行签名,其中应包含断言数据。这将减少SP的处理要求。对于Web SSO,我只在断言和响应由不同的实体签名时才会看到这两个部分都签名。
发布于 2011-08-08 00:50:49
如果同时对两者进行签名,则必须先对断言进行签名,然后再对响应进行签名,因为响应签名将基于响应的全部内容(包括断言签名)。因此,第二次签署断言将使响应签名无效。
https://stackoverflow.com/questions/6960886
复制相似问题