我有_client-cert.pem和client-key.pem和ca.pem文件,我正在尝试将它们添加到我的grails项目中。
我使用了以下命令:
在创建密钥库之前将客户机密钥/证书文件转换为 PKCS#12
openssl pkcs12 -export -in client-cert.pem -inkey client-key.pem
-name “mysqlclient” -passout pass:mypassword -out client-keystore.p12
使用 client-keystore.p12 文件创建 Java 密钥库
keytool -importkeystore -srckeystore client-keystore.p12 -srcstoretype pkcs12 \ -srcstorepass mypassword -destkeystore keystore -deststoretype JKS -deststorepass mypassword
然后使用该路径修改了我的应用程序.yml文件:
enabled: true
key-store: /..../proxreg
key-store-password:kjsfghsfjlhgl
keyStoreType: pkcs12
keyAlias: tomcat
我想知道我是否错过了任何步骤或我做错了什么。我收到访问被拒绝错误,但是当我尝试连接 mysql 炒锅时,它可以工作
您可以使用 openssl 命令行实用程序生成自签名证书。
我们可以使用 openssl 的 req 命令来创建自签名证书:
openssl req -x509 -newkey rsa:4096 -keyout key.pem -out cert.pem -days 365
上面将提示您提供有关证书的元数据,例如国家/地区、组织等。此外,它会要求您提供 PEM 密码短语。输入随机密码并确保其安全;我们将在下一步中需要。
现在,您已经有了自签名证书。不幸的是,Grails(和Spring Boot(不直接支持PEM格式。相反,我们需要对密钥使用 PKCS12 格式。幸运的是,还有另一个 openssl 命令可以进行转换:
openssl pkcs12 -export -in cert.pem -inkey key.pem -out keystore.p12 -name tomcat -caname root
使用以下行更新 grails-app/conf/application.yml:
server:
port: 8443
ssl:
keyStore: /certificates/keystore.p12
keyStorePassword: secret
# keyAlias: tomcat
最重要的是和我一起工作得很好。 欲了解更多信息,请参阅此处和此处
希望这对您有所帮助。