为新成员分发iOS开发证书签名
问题背景
iOS开发或React Native前端开发,在iOS真机运行/打包的过程中, 需要使用有公司开发者账号权限的apple id进行数字签名。
人员较少时,可以通过共用“开发者主账号”来获取权限。 这种方式有两个弊端,
一,需要直接告知主账号的账号密码,对账号的安全有一定风险。
二,每次登录账号时,需要通过向管理员的邮箱、或手机号发送验证码,进行二次安全确认,操作繁琐。
随着后期成员增加,可以让成员使用各自的子账号apple id来获取Apple证书签名权限。这种方式更加安全、方便。
操作步骤
第一步:添加新成员的apple id为开发者
操作者:老成员
在App Store Connect【用户和访问】页中增加新成员, (2022年3月,路径为https://appstoreconnect.apple.com/access/users)
需要注意的点,
- 邮箱填新成员的有效apple id,
- 职能为“开发者”,
- 其他资源勾选“访问证书、标识符和描述文件”和“访问云端管理的分发证书”
第二步:新成员在自己apple id的邮箱中同意加入开发者团队
操作者:新成员
apple id的邮箱中会收到一封邀请邮件,点击同意加入
第三步:老成员导出钥匙串访问中的证书
操作者:老成员
将mac上的相关开发证书导出
包括:
- 开发者账号的开发证书(Apple Development)
- 开发者账号的发布证书(Apple Distribution)
如果开发的App有推送处理,还需包括
- App开发推送证书(Apple Development iOS Push Services)
- App发布推送证书(Apple Push Services)
各自导出为p12文件。导出环节中会要求设置密码。
之后将这几个p12文件发送给新成员,并将p12文件的安装密码告知新成员
第四步,新成员安装证书到钥匙串访问
操作者:新成员
接收到p12文件后,mac上逐个点击即可。
此时系统会弹框要求输入安装密码。
钥匙串类型选择“登录”。
之后打开“钥匙串访问”,确认所有证书都已经出现在列表中。
第五步,新成员解决iOS证书不受信任问题(选做,如果发生这个错误)
操作者:新成员
如果新成员出现证书不信任的问题
前往苹果网站下载证书
https://www.apple.com/certificateauthority/
下载其中的证书G3、G4、G5,下载后分别双击,之后证书会出现在“钥匙串访问”列表中,红字错误信息也消失。
第六步,新成员XCode中登录自己的apple id作为开发者账号
操作者:新成员
打开Xcode菜单Xcode->Preferences->Accounts,
点击“+”添加自己的apple id,输入账号密码后,应该能够在Team栏看到公司账号信息。
点击下方【Download Manual Profiles】按钮,确保将app的描述文件同步到本地。
第七步,新成员XCode中Team设置为该公司账号
操作者:新成员
XCode 工程设置Signing&Capabilities栏,Team行的选项中能看到公司账号,选择这个公司账号。之后下方的Provisioning Profiles和Signing Certificate 行自动匹配到证书信息。
第八步,确认真机运行、打包,大功告成
操作者:新成员
至此,本地环境已经获得了签名证书。
尝试真机运行、打包,确保没有问题。