

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

# Elastic Beanstalk 访问密钥和参数所必需的 IAM 权限
<a name="AWSHowTo.secrets.IAM-permissions"></a>

您必须向环境的 EC2 实例授予必要的权限，才能获取和 Paramet AWS Systems Manager er Store 的密钥 AWS Secrets Manager 和参数。可通过 EC2 [实例配置文件角色](iam-instanceprofile.md)向 EC2 实例提供权限。

以下各节列出了根据您使用的服务，需要添加到 EC2 实例配置文件中的具体权限。按照《IAM 用户指南》**中[更新角色的权限策略](https://docs.aws.amazon.com//IAM/latest/UserGuide/id_roles_update-role-permissions.html)的步骤添加这些权限。

**ECS 托管 Docker 平台的 IAM 权限**  
ECS 托管 Docker 平台除了需要本主题中提供的权限外，还需要额外的 IAM 权限。有关您的 ECS 托管 Docker 平台环境为支持 Elastic Beanstalk 环境变量与密钥集成所需的全部权限的更多信息，请参阅[执行角色 ARN 格式](create_deploy_docker_v2config.md#create_deploy_docker_v2config_executionRoleArn_format)。

**Topics**
+ [Secrets Manager 所需的 IAM 权限](#AWSHowTo.secrets.IAM-permissions.secrets-manager)
+ [Systems Manager Parameter Store 所需的 IAM 权限](#AWSHowTo.secrets.IAM-permissions.ssm-paramter-store)

## Secrets Manager 所需的 IAM 权限
<a name="AWSHowTo.secrets.IAM-permissions.secrets-manager"></a>

以下权限授予从 AWS Secrets Manager 商店获取加密密钥的权限：
+ 秘密管理器：GetSecretValue
+ kms:Decrypt

只有当您的密钥使用客户托管密钥而不是默认密钥时，才需要解密权限。 AWS KMS key 通过添加自定义密钥的 ARN，即可授予解密该客户自主管理型密钥的权限。

**Example ：具有 Secrets Manager 和 KMS 密钥权限的策略**    
****  

```
{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "secretsmanager:GetSecretValue",
                "kms:Decrypt"
            ],
            "Resource": [
                "arn:aws:secretsmanager:us-east-1:111122223333:secret:my-secret",
                "arn:aws:kms:us-east-1:111122223333:key/my-key"
            ]
        }
    ]
}
```

## Systems Manager Parameter Store 所需的 IAM 权限
<a name="AWSHowTo.secrets.IAM-permissions.ssm-paramter-store"></a>

以下权限授予从参数存储区获取加密 AWS Systems Manager 参数的权限：
+ ssm：GetParameter
+ kms:Decrypt 

只有使用客户托管密钥而不是默认密钥的`SecureString`参数类型才需要解密权限。 AWS KMS key 通过添加自定义密钥的 ARN，即可授予解密该客户自主管理型密钥的权限。未加密的常规参数类型 `String``StringList`，不需要 AWS KMS key。

**Example 使用 Systems Manager 的策略和 AWS KMS 密钥权限**    
****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "ssm:GetParameter",
                "kms:Decrypt"
            ],
            "Resource": [
                "arn:aws:ssm:us-east-1:111122223333:parameter/my-parameter",
                "arn:aws:kms:us-east-1:111122223333:key/my-key"
            ]
        }
    ]
}
```