我正在为客户开发一个应用程序,总而言之,该应用程序允许每个客户通过自定义模板并关联他们自己的域名来创建自己的应用程序版本(所有代码都位于我的客户端服务器)。
我面临的问题是,当此类用户使用自己的域名创建自己的品牌版本,然后想要登录其管理员时,系统无法提供 https 身份验证。
我知道可以创建一个自签名证书,并且我“认为”有一种相当简单的方法可以以编程方式执行此操作,但是如果我想让用户能够购买自己的 CA 签名证书,那么这怎么可能完成了吗?
我花了几个小时试图在网上找到这个问题的答案,但似乎找不到解决这个令人困惑的问题的方法。
我认为我需要的是一些简单的代码,允许用户填写所需的表单字段,进而创建 CSR 文件,用户又将其提供给 CA 以获取他的 CA 文件,并为其提供一些代码需要允许用户上传它...这反过来会自动安装它并重新起草所需的 Web 服务。
任何/所有帮助和指导将不胜感激!
最佳答案
如何解决这个问题取决于您的架构。但这里有一些需要考虑的事情:
- 大多数 SSL 配置都在唯一的 IP 地址上运行。因此,这意味着您添加的每个 SSL 证书都需要另一个 IP 地址。例如,如果您使用负载均衡器,您也许能够集中该配置。您是否可以通过编程方式执行此操作取决于您的负载均衡器。
- 您最好根据您的私钥生成 CSR。否则,您将必须允许用户上传私钥和证书(有时还上传链文件)。
关于php - 如何以编程方式安装 ssl 证书 (OpenSSL),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6288305/