# OSX 公证失败

> Resolve macOS notarization failures and fix signing issues.

## 症状##symptoms

* 设置 Unity Build Automation 来对 macOS 构建进行公证时，构建会失败。
* 输入了正确的凭据进行 macOS 签名或公证，但 macOS 构建在公证步骤中失败。
* 在构建日志中，出现以下警告：`[warning] Warning: unable to build chain to self-signed root for signer "Developer ID Application: Peter Davidson (6R6AR2S484)"`

  随后出现错误消息：

  `"message": "The binary is not signed with a valid Developer ID certificate."`

## 环境##environment

在 Unity Build Automation (UBA) 中，您希望针对 macOS 进行构建，并且已使用上传的凭据对构建 Artifact 进行签名和公证，以便分发。在本地构建应用程序并进行公证时，这些凭据完整且正常工作。

## 潜在原因##potential-cause

公证失败的潜在原因有很多。最常见的原因之一是用于对应用程序进行签名和公证的导出凭据存在问题。

## 解决方案##resolution

首先，通过[在 Keychain Access 中验证证书](https://support.apple.com/en-ca/guide/keychain-access/kyca2794/mac#:~:text=Choose%20Keychain%20Access%20%3E%20Certificate%20Assistant,email%20address%20of%20the%20sender.)，确保证书有效。

如果证书有效，并且您可以使用相同的凭据在本地对应用程序进行签名和公证，则可能需要导出包含所使用中间证书的 `.p12` 文件。

要导出 `.p12` 文件，请在 Keychain Access 中选择使用的私钥、证书和中间证书，然后右键单击以导出 `.p12` 文件。有关更详细的说明，请参阅[创建 p12 文件](../../sign-build-artifacts/sign-an-ios-application#creating-a-p12-file)。


**UBA - 导出 .p12 文件:**
!["UBA - 导出 .p12 文件"](/api/media?file=/build-automation/media/images/build-automation/export-p12-file.png "UBA - 导出 .p12 文件")

在构建目标的 **Basic Settings（基本设置）** 选项卡中使用这个新的 .p12 文件更新或创建一组新的签名凭据，然后尝试再次构建 OSX 应用程序并进行签名或公证。

如果问题仍然存在，请联系服务支持团队。要从 Unity Dashboard 提交工单，请打开 **DevOps**，然后选择 **Help & Support（帮助与支持）**> **Ticket（工单）**> **File a ticket（提交工单）**。
