Macos应用程序代码签名

代码签名需要到 苹果开发者中心 订阅688/年的功能， 

 

 创建Developer Application ID的证书（此操作只能账号持有者或管理员权限的人操作，开发者是没有权限） 

 导出p12格式的证书 

 在ci的机器上导入p12格式的证书，最好是单独建一个keychain 

 每次构建前先解锁keychain 

 

 在gitlab-ci中使用代码签名 

 # 钥匙串访问密码

KEYCHAIN_PASSWORD=""

CERT_PATH="certs/mac_signing.p12"

CERT_PASS=""

# 1️⃣ 创建 keychain（仅首次）

security create-keychain -p "${KEYCHAIN_PASSWORD}" gitlab-ci.keychain

# 2️⃣ 禁止自动锁定（或设置超时时间）

security set-keychain-settings -lut 0 gitlab-ci.keychain

# 3️⃣ 解锁

security unlock-keychain -p "${KEYCHAIN_PASSWORD}" gitlab-ci.keychain

# 4️⃣ 导入证书（仅首次）

security import ${CERT_PATH} -k gitlab-ci.keychain -P "${CERT_PASS}" -T /usr/bin/codesign

# 5️⃣ 授权 codesign 访问私钥

security set-key-partition-list -S apple-tool:,apple: -s -k "${KEYCHAIN_PASSWORD}" gitlab-ci.keychain 

 

 参考资料： 

 

 【稀土掘金】Electron 签名和公证