云管理式证书是Xcode13新上线的一个功能,已经上线了大概半年时间,但笔者发现网络上关于此功能的信息较少,特此记录,希望能帮助到一些人,有任何错误还请随时指出
最近查看钥匙串里的证书的的时候,发现一件很神奇的事,Apple Distribution发布证书不见了,但是项目仍然可以是正常打包的。
在开发者网站Apple developer查看证书列表,发现除了以前的distribution和development证书之外,还出现了两种之前没有见过的证书,Distribution Managed和Development Managed:
并且这个Distribution证书,跟普通的distribution有一些不同,例如不能手动下载,还有一个叫自动轮换日期的的东西
Google搜索distribution Managed相关信息,找到一个有关这方面的在苹果开发者社区的提问https://developer.apple.com/forums/thread/694143
其中最下面的一个回答指向一个链接https://help.apple.com/developer-account/#/dev8e84490b9,里面是苹果对“云管理式证书”的解释:
看到这里,差不多就明白了,在更新xcode13后,苹果上线了一种新的证书——云管理式证书,包括Distribution Managed和Development Managed。在打包或真机运行的时候可以使用云管理式证书对其应用进行签名,而且这种证书可以自动发起轮换,即不需要关心他的过期时间。同时,既然叫云管理证书,那也就不需要下载到本地钥匙串了。整个签名过程在苹果服务器线上完成。
苹果的这个功能大大简化了开发的步骤,过去在开发之前,需要配置和导入一系列证书。而现在在一台新电脑上进行开发和打包,只需要登录对应的Apple ID就可以直接编译运行和打包了,其他事情不需要开发者关心。
其实仔细观察也能发现,我的certificates里的Distribution Managed的到期时间是2022/09/27,往前推一年即创建日期为2021/09/27,在苹果developer官网可以看到Xcode13发布的日期是2021/09/21,时间刚好对上。
小知识:普通应用发布证书过期并不影响已上架的APP正常使用,但是使用企业签签名的应用在证书过期后会导致线上的APP也无法使用。