WSO2 IS对接SAML外部身份提供商时指定签名加密证书的方法问询
WSO2 IS SAML外部IdP请求签名/加密证书指定配置方案
1. 密钥库注册
首先将你已创建的包含签名、加密证书的密钥库文件放入WSO2 IS安装目录的/<IS_HOME>/repository/resources/security/路径下,然后编辑配置文件/<IS_HOME>/repository/conf/deployment.toml,添加以下配置块注册密钥库:
# 签名用途密钥库配置 [keystore.saml_sign_keystore] file_name = "你的签名密钥库文件名.jks" type = "JKS" password = "密钥库访问密码" alias = "签名证书别名" key_password = "签名证书私钥密码" # 加密用途密钥库配置(如果是单独密钥库则添加,共用的话可以复用上面的配置) [keystore.saml_enc_keystore] file_name = "你的加密密钥库文件名.jks" type = "JKS" password = "密钥库访问密码" alias = "加密证书别名" key_password = "加密证书私钥密码"
保存配置文件后,重启WSO2 IS实例使密钥库注册生效。
2. 外部IdP指定专用密钥配置
登录WSO2 IS管理控制台,按以下路径操作:
- 进入左侧菜单
身份提供商 > 身份提供商列表,找到你要配置的SAML外部IdP,点击编辑按钮 - 展开SAML2 Web SSO配置选项卡,下拉到折叠的高级配置区域并展开
- 签名配置:在
身份提供商请求签名别名输入框中,填入你注册的签名证书别名,和你已勾选的Enable Authentication Request Signing选项配合,即可指定发送SAML请求时使用该证书签名 - 加密配置:在
身份提供商请求加密别名输入框中,填入你注册的加密证书别名,同时勾选Enable Authentication Request Encryption选项,即可指定发送SAML请求时使用该证书加密 - 保存当前IdP的所有配置即可生效
3. 配置校验
发起一次SAML认证请求,抓取WSO2 IS发出的SAML请求报文:
- 签名请求:检查报文中的
<ds:Signature>节点下KeyInfo内的证书序列号、公钥信息,确认和你指定的签名证书一致 - 加密请求:检查报文中的
<EncryptedData>节点下的密钥标识,确认匹配你指定的加密证书信息
内容的提问来源于stack exchange,提问作者lostinspace
相关产品推荐
相关产品推荐

