尝试获取证书时出错: 在密钥链中找不到指定的项

我在设计应用程序时遇到了问题所以我把钥匙链上的所有钥匙都删了。然后我转到 证书助理 = > 从证书颁发机构请求证书(为新证书创建 CSR)。

因此,输入我的电子邮件地址,我得到的是:

在密钥链中找不到指定的项。

我做错了什么?

另外,当我尝试 创建证书颁发机构时,我会得到同样的错误。

98639 次浏览

解决了! 必须把“用户证书”改成“代码签名”。

这发生在我身上,我注意到创建证书请求的菜单选项已经从

向证书颁发机构申请证书..。

以“我的名字”向证书颁发机构申请证书..。

Check this menu option

我工作的时候在一个域名上,所以我退出了,以另一个用户的身份登录和退出,然后再次登录。之后,菜单按预期出现,这个错误消失了

我破案了。确保您处于“证书”部分,并且在请求证书之前选择“ Apple Worldwide Developer Relations Securities Authority”。

连我都有这个问题。我通过在 Categories面板中选择 All Items而不是 Keys来解决这个问题,然后尝试创建证书。

试试这个,一定行的。

好的,显示您在 Keychain 主窗口中突出显示的项的名称(如果您在这里选择了一个不同的项,您还会看到菜单项随之改变)。 如果您去左边的分类部分,选择我的证书,并返回到证书助理菜单项,它看起来/行为就像您已经习惯了。希望这个能帮上忙!

除非您的密钥链中同时具有 身份的私钥 还有公钥,否则 Keychain Access 将不允许您使用 向证书颁发机构申请证书时,应使用“ < em > Identity ”..。。当我只有私钥而没有相应的公钥时,我遇到了这个问题。

可以使用 我丢失了我的公钥。我可以从私钥中恢复它吗?中描述的过程从私钥创建公钥并将其导入到密钥链中

一旦导入了公钥,我就能够使用 向证书颁发机构申请证书时,应使用“ < em > Identity ”..。命令而不触发 在密钥链中找不到指定的项错误。

您正在(可能是偶然地)请求 Keychain Access 生成证书签名请求 使用现有的密钥。如果在进入 钥匙链访问-证书助理菜单时选择了一个键,则提供的选项将针对该选择的键。

在您的密钥链中选择一个非密钥项(如保存的密码) ,然后再次转到 钥匙链访问-证书助理,以正常生成 CSR。

如果您在生成新的 CSR 时选择了 keychain 中的任何私有密钥,那么它将提示您引用该密钥。只要确保您已经选择了任何非私有的关键项目生成新的企业社会责任,这将是有用的创建新的一个。

例如,保持在密钥链工具“公钥”或任何现有的证书中选择没有私钥对齐。现在按照“向证书颁发机构申请证书”流。

我有同样的问题。我可以创建 CSR,然后不创建它和同样的错误得到。

然后我可以搜索和找到可能的解决方案,但不能解决。

总有一天我会解决的。

我的钥匙链通过第一时间的板条箱通道,所以我的钥匙链通道是锁定的。

打开 > 钥匙链接入 > 钥匙链接入显示顶部”点击解锁系统钥匙链

单击它并解锁系统密钥链,然后创建 CSR 文件,然后没有得到这个错误。

我的目标是创建一个 CSR (证书签名请求) ,使用我现有的私钥向 Apple 提交,以生成一个新的 iPhone 分发证书。我确保证书是左边选择的 分类。我尝试右键单击我的私人密钥和点击 使用导入的私钥从证书颁发机构请求证书,并会得到以下错误,当我试图保存它。

在密钥链中找不到指定的项。

我在浏览文件菜单时也得到了同样的错误: 钥匙链访问 > 证书助理

我从其他互联网来源收集到的信息是,如果您导入了私钥,那么 Keychain Access 不允许您创建新的 CSR,只有当您从工具本地创建了密钥时才允许您创建新的 CSR。

我最后所做的是导出私钥并使用 openssl 生成新的 CSR,苹果接受了这一点,现在引用了新的 Import Private Key。

导出私钥

  1. 右键单击私钥
  2. 出口
  3. 确保选择了 p12文件格式
  4. 保存
  5. 输入密码(可选)
  6. 允许访问导出密钥
  7. 打开终端并转到导出目录
  8. 从 p12容器中提取密钥

小心,因为.pem 私钥不再受密码保护)

$ openssl pkcs12 -in Certificates.p12 -out Certificates.pem -nodes
Enter Import Password: ********************
MAC verified OK

使用导出的私钥创建新的 CSR

$ openssl req -out Certificates.csr -key Certificates.pem -new
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [AU]:.
State or Province Name (full name) [Some-State]:.
Locality Name (eg, city) []:.
Organization Name (eg, company) [Internet Widgits Pty Ltd]:.
Organizational Unit Name (eg, section) []:.
Common Name (e.g. server FQDN or YOUR name) []:John Doe Dev Key
Email Address []:thon@example.com


Please enter the following 'extra' attributes
to be sent with your certificate request
A challenge password []:
An optional company name []:

有几点需要注意:

  • 当您希望字段为空时,输入. ,或者默认将包括括括号[]中的内容。
  • 公共名称(CN)应该是您的私有密钥名称(例如,John Doe Dev Key)
  • 电子邮件地址应该是你的电子邮件地址(例如 thon@example.com)
  • 其他的都应该是空白的

确认你的 CSR

$ openssl req -noout -text -in Certificates.csr
Certificate Request:
Data:
Version: 0 (0x0)
Subject: CN=John Doe Dev Key/emailAddress=thon@example.com
Subject Public Key Info:
Public Key Algorithm: rsaEncryption
RSA Public Key: (2048 bit)
Modulus (2048 bit):
…
Exponent: 65537 (0x10001)
Attributes:
a0:00
Signature Algorithm: sha1WithRSAEncryption
…

您应该关心的是 主题行,并验证它是正确的。

现在你需要做的就是把它提交给苹果,等待证书生成,然后安装它。导入新生成的证书之后,您将看到它将引用上面导出的旧证书。

在密钥链中选择私钥会出现问题。 “在密钥链中找不到指定的项” 当您选择公钥时解决它。 “您的证书请求已在磁盘上创建。”

在撤销了我所有的证书之后,我发现问题出在我的 Yubikey上。这妨碍了我们在应用上签名。我把它取出来后,问题就解决了。

这个论坛帖子帮了我大忙: https://forums.developer.apple.com/thread/106938

转到“ 证书”部分并选择“ 苹果全球开发者关系认证机构之前请求证书。

enter image description here

下面的链接为我解决了这个问题。 Https://forums.developer.apple.com/thread/72863

在我的案例中,是一直连接到我的 Mac 的 yubkey。删除之后,问题就自动解决了。

对我来说,问题是一个证书搞砸了。

我没必要删除所有的证书。

识别错误证书:

  1. 从您的 Keychain 选择 LoginFrom Category 选择证书
  2. 找到任何具有蓝色 + 的 Apple 证书
  3. 双击证书。
  4. 展开信任如果它是混乱的,然后“当使用这个证书”被设置为“始终信任”连同蓝色 +

修复坏的证书:

  1. 只要设置为“使用系统默认值”并关闭它。
  2. 你会得到一个弹出框。输入你的密码来更新设置。
  3. 关闭钥匙链。
  4. 返回到您的项目,清理和运行。
  5. 问题应该已经解决了。如果没有工作,然后回到钥匙链,只是仔细检查,看看是否有任何其他苹果证书被设置为始终信任,并重复这一过程。

我在我的 Mac 也有同样的问题,我只是进入系统首选项,MySQL,选择 MySQL 版本,初始化数据库,输入密码,好的。然后它的工作

对我来说,我试图辞职的 IPA 文件生成的 expo build,所以我运行

codesign -f -s "iPhone Distribution: Company Certificate" --resource-rules Payload/MyApp.app/ResourceRules.plist  Payload/MyApp.app

然后它出现了

error: The specified item could not be found in the keychain.

所以我转到我添加(上传)证书的密钥链,然后在密钥链访问中用证书的 姓名替换“ iPhone 分发: 公司证书”。检查所附图像 enter image description here