我正在使用websphere的AdminTask.importSAMLIdpMetadata()函数将SAML-IdP元数据导入到我的服务器中。
AdminTask.importSAMLIdpMetadata('-idpId 1-ssoId 1-idpMetadataFileName'+idpMetaDataFile+'-signingCertAlias'+idpCertificateAlias+securityDomainParam);
它运行良好。
问题是,若相同的证书已经以其他别名导入,那个么它不会为相同的证书创建新的别名。
为了实现这一点,我需要编写自定义逻辑,它将执行importSAMLIdpMetadata()的所有任务,并始终创建别名
我的问题:
-
如何从IdP元数据中提取证书。(在Java、Jython或Ant中)
-
如何检查此证书是否已存在于Websphere"签名者证书"中。(在Java、Jython或Ant中)
我试着自己完成上述任务1) 证书可以从java中的IdP元数据中提取,就像普通的XML pasring和读取一样
2) 要检查证书是否已存在于Websphere"签名者证书"中,请执行以下操作:-使用jython获取的所有证书
AdminTask.listSignerCertificates('[-keyStoreName NodeDefaultTrustStore-keyStoreScope(cell):cell_name:(node):node_name]')
它会给你一个大字符串,每个键值对都放在方括号里[]
将其传递给java,并根据需要对其进行解析。