You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Domino AppDev Pack 1.0.13部署IAM服务自签CA签名证书失败

报错原因

命令中<(printf "[SAN]\nsubjectAltName=DNS:iamserver.com")属于Bash/Zsh等类Unix Shell独有的进程替换语法,Windows原生CMD、PowerShell环境不支持该语法,会直接把这段字符串当作不存在的文件路径传递给openssl的-extfile参数,触发「系统找不到指定的文件」错误。
如果你是在Git Bash/WSL等模拟类Unix环境执行命令仍报错,是因为当前调用的openssl为Windows原生版本,无法识别进程替换生成的虚拟文件路径。

解决方法

不要使用进程替换传参,提前创建静态扩展配置文件再执行签名,步骤如下:

  • 在当前命令执行目录下新建名为san.cnf的配置文件,写入以下内容:
[SAN]
subjectAltName=DNS:iamserver.com,DNS:serv.org.com

提示:你的本地服务域名为serv.org.com,建议一并加入SAN列表,否则后续会出现证书域名不匹配的鉴权错误

  • 执行修改后的签名命令,直接指定静态配置文件路径:
openssl x509 -passin pass:passw0rd -req -days 365 -in iamserver.csr -CA ca.crt -CAkey ca.key -out iamserver.crt -CAcreateserial -CAserial ca.seq -sha256 -extfile san.cnf -extensions SAN
验证方式

证书生成后执行以下命令,若输出中包含你配置的所有DNS域名,说明SAN扩展已正确写入:

  • Windows环境执行:
openssl x509 -in iamserver.crt -noout -text | findstr /C:"Subject Alternative Name" /A:2
  • 类Unix/Linux环境执行:
openssl x509 -in iamserver.crt -noout -text | grep -A 2 "Subject Alternative Name"

注意:你之前执行成功的无SAN参数的签名命令生成的证书,仅靠CN字段标识服务域名,现代浏览器、多数服务鉴权组件已经不再信任这类无SAN字段的证书,必须添加SAN扩展才能正常使用。

内容的提问来源于stack exchange,提问作者Cora.Kn.Kwok

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.30 22:33:17