

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# 作业的私有注册表身份验证
<a name="private-registry"></a>

使用对作业进行私有注册表身份验证 Amazon Secrets Manager 使您能够安全地存储凭证，然后在作业定义中引用这些凭证。这提供了一种引用私有注册表中存在的容器镜像的方法 Amazon ，这些镜像需要在任务定义中进行身份验证。此功能仅受 Amazon EC2 实例和 Fargate 上托管的作业支持。

**重要**  
如果您的作业定义引用了存储在 Amazon ECR 中的映像，则此主题不适用。有关更多信息，请参阅 *Amazon Elastic Container Registry 用户指南*中的[使用 Amazon ECR 和 Amazon ECS](https://docs.amazonaws.cn/AmazonECR/latest/userguide/ECR_on_ECS.html)。

对于 Amazon EC2 实例上托管的作业，此功能要求您具有版本 `1.19.0` 或更高版本的容器代理。但是，我们建议使用最新的容器代理版本。有关如何检查您的代理版本和更新到最新版本的信息，请参阅《Amazon Elastic Container Service 开发人员指南》**中的 [更新 Amazon ECS 容器代理](https://docs.amazonaws.cn/AmazonECS/latest/developerguide/ecs-agent-update.html)。

对于 Fargate 上托管的作业，此功能需要平台版本 `1.2.0` 或更高版本。有关信息，请参阅《Amazon Elastic Container Service 开发人员指南》**中的 [Amazon Fargate Linux 平台版本](https://docs.amazonaws.cn/AmazonECS/latest/developerguide/platform-linux-fargate.html)。

在容器定义中，使用您创建的密钥的详细信息指定 `repositoryCredentials` 对象。你引用的密钥可以来自与使用它的工作不同的账户， Amazon Web Services 区域 也可以来自不同的账户。

**注意**  
使用 Amazon Batch API Amazon CLI、或 Amazon SDK 时，如果密钥与您启动的任务 Amazon Web Services 区域 相同，则可以使用密钥的完整 ARN 或名称。如果密钥存在于另一个账户中，则必须指定密钥的完整 ARN。使用时 Amazon Web Services 管理控制台，必须始终指定密钥的完整 ARN。

下面是显示必需参数的作业定义代码段：

```
"containerProperties": [
  {
    "image": "{{private-repo/private-image}}",
    "repositoryCredentials": {
      "credentialsParameter": "arn:aws:secretsmanager:{{region}}:{{123456789012}}:secret:{{secret_name}}"
    }
  }
]
```