我有以下问题,我在任何地方都找不到解决方案。基本上,我们有一个公司开发人员帐户(不是企业),所以为了提交我们的应用程序,我要求我们的团队领导向我发送分发证书,并创建并发送分发配置文件。
有了开发者配置文件,一切都很好,但当我安装证书和供应配置文件时,我在Xcode上没有看到分发配置文件,也没有在keychain中的dist cert下有私钥。
有人知道怎么解吗?我在不同的地方读到,我需要撤销证书并创建一个新的,但我真的不能这样做,因为我们公司有一堆应用程序,我不能为每个人撤销它。
我有以下问题,我在任何地方都找不到解决方案。基本上,我们有一个公司开发人员帐户(不是企业),所以为了提交我们的应用程序,我要求我们的团队领导向我发送分发证书,并创建并发送分发配置文件。
有了开发者配置文件,一切都很好,但当我安装证书和供应配置文件时,我在Xcode上没有看到分发配置文件,也没有在keychain中的dist cert下有私钥。
有人知道怎么解吗?我在不同的地方读到,我需要撤销证书并创建一个新的,但我真的不能这样做,因为我们公司有一堆应用程序,我不能为每个人撤销它。
当前回答
当您更改的Mac不是创建分发证书的原始Mac后,您将丢失私钥。只需删除原始证书并重新创建一个新的证书,这对我来说是有效的~
其他回答
从KeyChain中删除现有的,从创建证书的地方获取并添加.p12文件到mac。
要从源Mac获取.p12,进入KeyChain,展开证书,选择两者并导出2项。这将保存.p12文件在您的位置:
旧的XCode版本也会导致这种情况。我用的是XCode10(2022年的旧版本)。更新到最新版本,解决了该问题。
只要你仍然可以访问用来生成原始分发证书的mac,这是非常简单的。
只需使用mac的钥匙链访问应用程序导出证书和私钥。使用shift或命令选择两者,然后右键单击导出到.p12文件。
附上一个截图,使它非常清楚。
在你的mac上,导入.p12文件,你就可以开始了(只要确保你有一个有效的配置文件)。
只是为了解释一下。
在我从Keychain中删除p12证书后。我从苹果开发者门户网站重新下载了我自己的证书。
我只能下载到证书。但是要签名,还需要私钥。所以你要么:
从Keychain导出私钥和证书来获得它。 上传证书签名请求并生成新证书
该证书本身对于签名来说没有价值。我的猜测是,私钥是在您“向证书颁发机构请求证书”时由keychain创建的,但直到您添加其匹配的证书时才会显示给您。
如果您正在创建自己的分发证书,而不是使用其他人的,那么这可能会有所帮助。
今天在这个问题上花了相当多的时间,从无法创建SigningRequest到生成分发证书,并且没有将它附加到我的KeyChain Access中的私钥。这些步骤帮助我解决了这个问题。
如果您仍然有问题,撤销您当前的证书并重新开始。
创建一个新的签名请求
密钥链访问>证书助手>从证书颁发机构请求证书实际上在您启动它时上下文知道您当前所选择的内容。为了确保你不会因为一些随机选择而意外地扭曲你的请求,转到你的登录项并选择Apple Worldwide Developer项。然后启动上面的请求并创建CertificateSigningRequest。certSigningRequest文件。
进入Apple Dev门户,添加新的分发证书,上传您的CertificateSigningRequest。certSigningRequest文件,下载新创建的分发证书。 要将分发证书导入到您的密钥链中,而不是仅仅双击它,我建议打开您的密钥链,进入“登录/证书”区域,并将证书拖放到这里。
我有一个问题,我的证书将自动安装到系统区域,而不是我的私钥存在的登录区域,这导致我的密钥没有链接到新的证书。