

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

# 管理对Windows工作用户密钥的访问权限
<a name="manage-access-windows-secrets"></a>

使用配置队列时 Windows`jobRunAsUser`，必须指定 Secrets Manager AWS 密钥。这个秘密的值应该是 JSON 编码的对象，其形式为：

```
{
    "password": "JOB_USER_PASSWORD"
}
```

要使工作人员按照队列的配置运行作业`jobRunAsUser`，队列的 IAM 角色必须具有获取密钥值的权限。如果使用客户管理的 KMS 密钥对密钥进行加密，则队列的 IAM 角色还必须具有使用 KMS 密钥进行解密的权限。

强烈建议对这些机密遵循最低权限原则。这意味着获取队列 `jobRunAsUser` `windows` → 的秘密值的访问权限`passwordArn`应为：
+ 在舰队和队列之间创建队列队列关联时授予舰队角色
+ 删除队列和队列之间的队列队列关联后，已从舰队角色中撤销

此外，当不再使用包含`jobRunAsUser`密码的 Secr AWS ets Manager 密钥时，应将其删除。

## 授予对密码密钥的访问权限
<a name="grant-access"></a>

当队列和队列关联时，Dead `jobRunAsUser` line Cloud 舰队需要访问存储在队列密码密钥中的密码。我们建议使用 S AWS ecrets Manager 资源策略来授予对舰队角色的访问权限。如果您严格遵守此准则，则可以更轻松地确定哪些舰队角色可以访问该机密。

**授予访问密钥的权限**

1. 打开 AWS 密钥管理器控制台查看密钥。

1. 在资源权限部分，添加以下形式的政策声明：

------
#### [ JSON ]

****  

   ```
   {
     "Version":"2012-10-17",		 	 	 
     "Statement" : [
       {
         "Effect" : "Allow",
         "Principal" : {
           "AWS" : "arn:aws:iam::{{111122223333}}:role/FleetRole"
         },
         "Action": [
           "secretsmanager:GetSecretValue"
         ],
         "Resource" : "arn:aws:secretsmanager:us-east-1:{{111122223333}}:secret:YourSecretName-ABC123"
       }
     ]
   }
   ```

------

## 撤消对密码密钥的访问权限
<a name="revoke-access"></a>

当队列不再需要访问队列时，请移除对队列密码密钥的访问权限`jobRunAsUser`。我们建议使用 S AWS ecrets Manager 资源策略来授予对舰队角色的访问权限。如果您严格遵守此准则，则可以更轻松地确定哪些舰队角色可以访问该机密。

**撤消对密钥的访问权限**

1. 打开 AWS 密钥管理器控制台查看密钥。

1. 在资源权限部分中，删除以下形式的政策声明：

------
#### [ JSON ]

****  

   ```
   {
     "Version":"2012-10-17",		 	 	 
     "Statement" : [
       {
         "Effect" : "Allow",
         "Principal" : {
           "AWS" : "arn:aws:iam::{{111122223333}}:role/FleetRole"
         },
         "Action" : [
           "secretsmanager:GetSecretValue"
         ],
         "Resource" : "arn:aws:secretsmanager:us-east-1:{{111122223333}}:secret:YourSecretName-ABC123"
       }
     ]
   }
   ```

------