我可以使用Active Directory作为创buildIIS的testingSSL证书的CA吗?

我们有我们网站的内部testing版本,可以通过www.mysite.com.test(通过内部DNS区域)获得

我想为www.mysite.com.test创build一个SSL证书,以便我们的testing人员不会收到无效的证书警告(“真实”证书绑定到www.mysite.com)

我知道如何使用OpenSSL创build自签名证书,但是我想知道是否有某种方式将证书颁发机构与我们的Active Directory域相关联,这样,属于域成员的PC上的任何用户都将接受自签名证书,而不必显式安装它(或将自签名证书颁发机构明确安装为受信任的颁发机构)

有任何想法吗?

您可以通过组策略添加受信任的根。 所以做一个自签名的证书,把它作为一个可信任的根,然后用它签名的任何证书都将被信任。

Policy Object Name/Computer Configuration/Windows Settings/Security Settings/Public Key Policies/Trusted Root Certification Authorities 

设置MSauthentication机构不是必需的

如果您有运行AD CSangular色的服务器颁发证书,则不会再自行签名,而是由您的内部CA签发。 要回答更大的问题,是的,你可以做到这一点。 您必须安装Active Directory证书服务angular色,并从那里创build/分发证书。 这个用例无需触及OpenSSL。

要正确回答您的问题:不,您无法使用Active Directory创build自签名证书。 不过,我认为你的问题是混合不同的东西。

  • 自签名证书不是由主pipe机关签发(这就是为什么他们是签名的)
  • 您可以将证书颁发机构与Active Directory集成,以便自动化服务器和用户证书。

为了创build自签名的证书,你有很多select。 最简单的一个,如果你是一个Windows商店,通过IIS来完成(参见: http : //technet.microsoft.com/library/cc753127%28WS.10%29 )。 你也可以用OpenSSL(很麻烦,但工作),使用.NET SDK附带的makecert.exe工具或许多类似的工具(我使用我自己的工具,但这只是我)来做到这一点。

要将CA与AD集成,最简单的方法是在计算机上安装证书服务angular色并将其configuration为AD集成(尽pipe在您的情况下,除非您希望将其用于其他目的,否则似乎不是必需的)。

最后,您可能希望创build自己的未与AD集成的根。 除非您必须使用客户端证书身份validation,否则需要使用许多不同的服务器(使用不同的名称)来testing(也可能使用自动化testing),或者希望能够testing使用特殊应用程序的某些方面证书属性或链接,这可能是不值得的麻烦。

在你的情况下,假设我正确地理解了它,你所要做的就是用一个证书testing你的web应用程序,我所要做的就是生成一个自签名的证书(使用你最喜欢的任何工具),然后在在您的testing机器上正确存储(以避免证书警告和错误)

我可以使用Active Directory作为CA创build一个自签名的IIS证书吗?

你不能。 单点 – AD不是CA. 像这样

WIndows有一个你可以安装的CA组件,而不是AD。 这是一个单独的angular色。 一旦你这样做,为什么使用自签名证书呢?