11

我正在使用 SAML2 和 ADFS2 (IdP) 创建 SSO“概念证明”。登录工作正常,但是 ADFS2 要求对我的注销请求进行签名(使用私钥),然后我想我会在我的依赖方信任中的签名选项卡下添加相同的证书(.cer 文件)在 ADFS2 中。唯一的问题是我的应用程序(服务提供商)没有证书。我知道我可以为此创建一个自签名证书,但我似乎无法弄清楚如何创建一个包含我需要的一切的证书。

4

2 回答 2

23

为了生成自签名证书,您需要 openssl 库,因此:

德比安: apt-get install openssl

Centos/红帽: yum install openssl

然后按照以下 3 个步骤操作:

  • 生成私钥:

    openssl genrsa -out server.pem 2048

  • 生成 CSR:(在“通用名称”中设置您的服务提供商应用程序的域)

    openssl req -new -key server.pem -out server.csr

  • 生成自签名证书

    openssl x509 -req -days 365 -in server.csr -signkey server.pem -out server.crt

在流程结束时,您将获得 server.csr(证书签名请求)、server.pem(私钥)和 server.crt(自签名证书)

在 Windows 中,您可以使用makecert.exe

于 2013-01-22T17:50:31.667 回答
3

在组合 ADFS 概念证明时,我使用了适用于 Windows 的 SelfSSL 工具。具体来说,这家伙有一个IIS7的增强版

示例命令:

selfssl7.exe /N cn=www.example.com /K 2048 /V 3652 /X /F C:\example.pfx /W foo

使用 2048 位密钥生成“example.pfx”文件,有效期约为 10 年,密码“foo”保护私钥,通用名称为“www.example.com”。您可以将其导入本地计算机的证书存储,然后根据需要将其导出为带有或不带有私钥信息的 .cer 文件。

于 2013-01-22T22:32:09.087 回答