我正在尝试使用特定证书自动化构建 iphone 应用程序的过程。所以想象一下,如果不同的用户将他们的证书上传到系统中,并且可以立即进行代码签名。我想在没有任何交互的情况下做到这一点。我也不想用不同的用户证书弄乱系统或登录钥匙串。为此,我有:
- 关闭了 XCODE 中要求为 aa 构建进行代码签名的要求。
- 开发了一个 ruby 脚本来通过 xcodebuild 命令行工具构建一个应用程序
- 创建了一个脚本来为我系统的用户自动创建一个新的钥匙串
- 编写了一个脚本来对构建的 iphone 应用程序进行代码签名。
一切正常,但是当代码设计程序尝试行使签名权限时,我需要手动输入。我的钥匙链都解锁了。奇怪的是,如果我将钥匙串设为默认钥匙串,它会起作用,但这是不可扩展的,即我在任何给定时间只能进行一个构建过程。
当我手动单击始终允许该过程时,我在钥匙串转储中得到一个如下所示的条目:
entry 1:
authorizations (6): decrypt derive export_clear export_wrapped mac sign
don't-require-password
description: privateKey
applications (2):
0: /usr/bin/codesign (OK)
所以我认为我需要在安全中使用授权命令来为这些权限预自动化代码设计。安全手册页很差。我似乎无法使用以下命令使其工作:
安全 -v 授权 -uew 标志 | /usr/bin/codesign [指向应用程序和特定钥匙串的代码符号变量]
有没有人有任何想法?