- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
两年前,我获得了 VeriSign/Symantec SSL 证书。发起此请求时,我们在与证书的通用名称无关的随机服务器上创建了一个 CSR。为了创建 Java keystore ,我执行了以下两个步骤。
openssl pkcs12 -export -in common_name.cer -inkey common_name.key -out renewal.p12 -name common_name_alias -CAfile NewVerisignIM.cer -caname root
keytool -importkeystore -deststorepass XXX! -destkeypass XXX!
-destkeystore renewal.keystore -srckeystore renewal.p12 -srcstoretype PKCS12 -srcstorepass XXX! -alias common_name_alias
现在我们的证书即将过期。在使用赛门铁克网站上的原始条目并创建新的 CSR 时,我们得到了签名证书文件(文件名与上面的 common_name.cer 相同),私钥(文件名与上面的 common_name.key 相同)。签署新的 CSR 后,我们没有取回“NewVerisignIM.cer”文件,该文件似乎是根 CA 和中间 CA 组合在一个文件中(我相信也就是 CA 链)。所以我不知道如何在没有该文件的情况下重新创建 Java Keystore。
我尝试在签名后将旧的“NewVerisignIM.cer”与新文件一起使用,但这没有用。到目前为止,这就是我尝试过的所有内容。我得到了
的 Java 异常PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target
本网站包含使用原始 CSR 和使用 JKS 的说明。
但是这个问题/答案建议使用新的 CSR。
Renew certificate with Java Keytool - reuse old CSR?
如果我们使用新的 CSR,我可以使用哪些命令?
最佳答案
我的命令是正确的。第一个命令(X509 到 PKCS12)需要新私钥。第一个命令需要新 签名证书。在创建原始证书时,第一个命令需要原始 CA 链文件。更新不包含此文件作为输出。 2015年,Verisign可能还没有被赛门铁克收购,所以文件被命名为“NewVerisignIM.cer”。上面的第二个命令将 PKCS12 格式转换为 JKS(Java keystore )格式。
我的问题是,作为客户端的服务器正在对此服务器进行身份验证,但没有更新公钥,因为在更新中分配了一个新的私钥。请注意,这个新私钥是赛门铁克推荐的,但不是必需的。因此,我必须在包含续订证书公用名称的服务器上转换这两个命令后,从新创建的 JKS 存储中导出证书,然后从客户端 Java Keystore(在一个不同的服务器),并导入新的公钥,这样它就可以与服务器通信(使用更新和新的私钥)。
在服务器上运行的命令(创建新的 keystore ):
openssl pkcs12 -export -in common_name.cer -inkey common_name.key -out renewal.p12 -name common_name_alias -CAfile NewVerisignIM.cer -caname root
keytool -importkeystore -deststorepass XXX! -destkeypass XXX!
-destkeystore renewal.keystore -srckeystore renewal.p12 -srcstoretype PKCS12 -srcstorepass ppp1 -alias common_name_alias
keytool -export -alias https-renewal -file https-renewal.pem -keystore renewal.keystore
命令在客户端运行( keystore 保持不变):
keytool –delete –alias https-renewal –keystore original.keystore –storepass ppp2
keytool -import -v -alias https-renewal -file https-renewal.pem -keystore original.keystore -storepass ppp2
(其中“https-renewal.pem”是从本答案中的第 3 个命令导出的文件)
关于java - 使用新的 CSR(不是原始 CSR)通过 Symantec 续订来续订 Java Keystore 的命令,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44420459/
先明确我的问题 使用sql server 2008 enterprise作为数据库服务器检查我的代码 表格 View ApCclNoBudgDeptItemIDItem NameQ
为了从 C++ 模型在 QML 中显示一些像素图,我使用了 QQuickImageProvider : class ImageProvider : public QQuickImageProvider
我有一个服务连接,用于 Azure DevOps 中的管道。它是由另一位用户不久前创建的。最近它过期了,不允许我更改与之关联的用户名。因此,我删除了该服务连接并创建了一个新的连接,并且花了我很多时间来
我有一个服务连接,用于 Azure DevOps 中的管道。它是由另一位用户不久前创建的。最近它过期了,不允许我更改与之关联的用户名。因此,我删除了该服务连接并创建了一个新的连接,并且花了我很多时间来
我需要为我的移动应用续订 iOS 分发证书,并希望聘请一名自由职业者来帮我完成此操作。 我知道,这需要使用 Apple 开发者帐户来完成 - 但我不想给他 root 访问权限。最好的方法是什么? 感谢
今天早上,我尝试为我的 iOS 应用程序上传一个包含一些错误修复的新版本到 AppStore,存档二进制文件成功,但我无法将其上传到 itunesConnect 进行发布。该错误与某些分发证书有关,因
订阅用户 取消或订阅(过期) 重新点击订阅链接以续订。 它会续订相同的订阅还是创建新订阅? 如果我们创建新的订阅,我们是否应该删除旧的过期订阅? 我想知道,订阅到期后我们应该如何处理。 最佳答案 在我
距离 Apple 开发者证书到期还有大约一周的时间。我不小心丢失了创建当前正在使用的最后一个证书时使用的 CSR 文件。 如果我要与另一个 CSR 一起获得新证书,您能否告诉我可能会遇到的所有问题?
我正在使用 WebDav 将元数据放在服务器的文件和文件夹中,并根据文件的 ETag 属性使用缓存来避免对服务器进行不必要的请求。 基本上,我发送一个 HEAD 请求并检查 ETag 是否与我在本地的
我正在尝试自动更新 RunAsAccount 的证书。在门户中,有一个简单的按钮,可让您续订帐户的证书。然而,这在商业案例中并不合适。 我找到了一些使用 PowerShell 更新该证书的解决方案,但
我有一个 React 应用程序,它使用 Azure B2C 对用户进行身份验证(PKCE 流)。只要用户有一些事件,就需要保持 session 事件。 我无法对 session 超时使用“滚动”,因为
刚刚更新了我们的 SSL 证书并上传到 Azure 并更改了 ServiceConfiguration 文件中的指纹,当我尝试部署时收到错误: “服务升级包指定输入端点 HttpsIn,它与角色 Ti
在 Azure Active Directory 中配置应用程序时,您可以创建有效期为 1 或 2 年的 key 。在拥有许多服务和客户的组织中,如何管理 key 续订? 当 key 即将到期时,Az
我想使用 kubectl 命令续订证书并更新 AKS 中的证书。最好、最简单的方法是什么? 我已使用 KQL 查询并成功根据证书过期创建警报。现在我想要根据此警报采取行动。我不想为此使用逻辑应用或事件
我有一个 AppService,其中 SSL 证书即将过期。我有更新的证书。有没有办法通过powershell上传这个而不造成中断? 此外,我打算自动化 AppService 中证书续订和更改的整个过
我的分发证书即将到期,我想知道: 如果我撤销它并创建一个新的,我当前测试人员的应用程序会停止工作吗? 这些测试人员正在使用具有临时配置文件的应用构建版本。这些不是应用商店版本,而是测试版本。 我假设他
我最近尝试更新我的 letsencrypt ssl 证书,但是一旦我这样做了,每当我尝试连接到我的网站时,我都会收到 400 个服务器响应。我已经尝试了我能想到的一切。我附上了我的 Nginx 错误日
这是我的情况: 我有一个要分发的客户端应用程序 - 我们将其称为 MyClient。 MyClient 与我们的其中一台服务器进行一些 SSL 通信。 MyClient 中嵌入了根 CA,因此它可以对
我有一个来自 Godaddy 的 ssl 证书,该证书将在两个月后到期。我的主机也是 Godaddy Windows VPS。 godaddy的自动续订续订了我的证书,发邮件给我下载安装。所以我去了我
我一直在为我的一些 Elastic Beanstalk 应用程序使用 IAM 服务器证书,但现在是时候更新了——用更新后的证书替换当前证书的正确过程是什么? 当我尝试使用与之前相同的命令重复上传时:
我是一名优秀的程序员,十分优秀!