我可以使用一些帮助。
我有一些非常粗略的要求,要建立单点登录到第三方网站。
我所说的文件说我需要:
创建X509证书公钥 将包含一些基本信息的SAML帖子发送到特定网址
使用plain(ASCII / UTF8)文本
在示例SAML断言中,X509证书应该如下所示:
.....
<ds:KeyInfo>
<ds:X509Data>
<ds:X509Certificate>xxxxxxxxxxxxxxxx</ds:X509Certificate>
</ds:X509Data>
<ds:KeyValue>
<ds:RSAKeyValue>
<ds:Modulus>xxxxxxxxxxxxxxxx</ds:Modulus>
<ds:Exponent>xxxx</ds:Exponent>
</ds:RSAKeyValue>
</ds:KeyValue>
...
所以我创建了自签名证书,如果我使用命令
openssl x509 -noout -text -in ca.crt
我看到公钥,但它有8个换行符,看起来像这样:
Subject Public Key Info:
Public Key Algorithm: rsaEncryption
RSA Public Key: (1024 bit)
Modulus (1024 bit):
01:a6:26:44:13:cb:ab:5d:37:83:b4:9f:25:a4:8f:
73:b8:e3:8c:a6:8a:58:13:a8:4f:af:43:8f:13:4a:
96:75:63:ba:8d:6a:43:9c:31:... etc
如何在RedHat linux上运行tomcat上的Java servlet中使用公钥。它是如何在内部和XML文档中工作的?
或者我在某个地方转错了?
感谢您的帮助
答案 0 :(得分:1)
我通常使用类似的东西:
<KeyDescriptor use="signing">
<ds:KeyInfo xmlns:ds="http://www.w3.org/2000/09/xmldsig#">
<ds:X509Data>
<ds:X509Certificate> ...hRWRV+DyfQc9nO
</ds:X509Certificate>
</ds:X509Data>
</ds:KeyInfo>
</KeyDescriptor>
换句话说,将“01:a6:26:44:13:”转换为“01a6264413”,没有换行符。