Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/python-2.7/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在使用AWS CLI向bucket添加策略时,是否可以使用bash变量?_Bash_Aws Cli - Fatal编程技术网

在使用AWS CLI向bucket添加策略时,是否可以使用bash变量?

在使用AWS CLI向bucket添加策略时,是否可以使用bash变量?,bash,aws-cli,Bash,Aws Cli,我正在使用AWS CLI创建策略并将其上载到多个存储桶-例如: #!/usr/bin/env bash NAME="test_client" aws s3 create-bucket --bucket ${NAME}_source_bucket 太好了。到目前为止一切都很好。接下来,我要运行以下程序: ARN="xxxx-xxxx-xxxx" put-bucket-policy --bucket ${NAME}_source_bucket --policy source_bucket_poli

我正在使用AWS CLI创建策略并将其上载到多个存储桶-例如:

#!/usr/bin/env bash
NAME="test_client"
aws s3 create-bucket --bucket ${NAME}_source_bucket
太好了。到目前为止一切都很好。接下来,我要运行以下程序:

ARN="xxxx-xxxx-xxxx"
put-bucket-policy --bucket ${NAME}_source_bucket --policy source_bucket_policy.json
我的桶政策的作用是:

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Effect": "Allow",
            "Principal": {
                "AWS": "arn:aws:iam::${ARN}:role/${NAME}_source_role"
            },
            "Action": "s3:ListBucket",
            "Resource": "arn:aws:s3:::${NAME}_source_bucket"
        },
        {
            "Effect": "Allow",
            "Principal": {
                "AWS": "arn:aws:iam::${ARN}:role/${NAME}_source_role"
            },
            "Action": "s3:GetObject",
            "Resource": "arn:aws:s3:::${NAME}_source_bucket/*"
        }
    ]
}

如果您是通过脚本编写的,可以使用

如果您在命令行中重复运行此命令,还可以创建一个JSON模板

埃雷多克

!/usr/bin/env bash 名称=测试客户端 aws s3创建bucket-bucket${NAME}\u source\u bucket ARN=xxxx xxxx xxxx put bucket policy-bucket${NAME}\u source\u bucket-policy source\u bucket\u policy.json 运行aws命令 aws s3创建bucket-bucket${NAME}\u source\u bucket put bucket policy-bucket${NAME}\u source\u bucket-policy source\u bucket\u policy.json
如果您是通过脚本编写的,可以使用

如果您在命令行中重复运行此命令,还可以创建一个JSON模板

埃雷多克

!/usr/bin/env bash 名称=测试客户端 aws s3创建bucket-bucket${NAME}\u source\u bucket ARN=xxxx xxxx xxxx put bucket policy-bucket${NAME}\u source\u bucket-policy source\u bucket\u policy.json 运行aws命令 aws s3创建bucket-bucket${NAME}\u source\u bucket put bucket policy-bucket${NAME}\u source\u bucket-policy source\u bucket\u policy.json