我正在与充当IdP(keycloak)的客户合作,所以我是SP。问题在于断言加密,过程应该是(至少我认为它应该以这种方式工作):
但根据keycloak doc(https://www.keycloak.org/docs/2.5/server_admin/topics/clients/client-saml.html):
使用领域的私钥加密SAML文档中的断言。 AES算法的密钥大小为128位。
文档错了?我错了吗 ?如果用自己的私钥加密断言,我应该如何解密断言?
有一个帖子有同样的疑问:http://lists.jboss.org/pipermail/keycloak-user/2016-June/006668.html
THX
答案 0 :(得分:0)
您引用了Keycloak手册中的文字来添加客户端,例如您的SP。
作为客户端/ SP,您可以使用领域的公钥加密对称密钥以加密您的请求详细信息。
手册中的文字在这个地方实际上是错误的,我无法确切地看到它在哪里。也许他们的意思是:
用SAM加密SAML文档中的断言 领域的私钥。 AES算法的密钥大小为128 位。 AES算法[...]
关于AES的声明也有些奇怪。似乎他们说客户端仅限于使用128位密钥,这很奇怪。几乎就像他们从服务器部分复制了这个,我找不到。
作为客户端,如果您在SAML消息中使用加密,则应使用IdP的公钥加密对称密钥。