对带有特定请求头的访问进行权限限制

最近更新时间:2019-01-14 10:10:54

1、以下示例向任何用户授予对指定存储空间中的文件执行任何 KS3操作的权限。但是,请求头必须带有x-kss-cdn请求头,并且x-kss-cdn请求头的value值必须为“kingsoftcdn”。

{
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "ks3:*"
      ],
      "Principal": {
        "KSC": [
          "*"
        ]
      },
      "Resource": [
        "krn:ksc:ks3:::example_bucket",
        "krn:ksc:ks3:::example_bucket/*"
      ],
      "Condition": {
        "StringEquals": {
          "ksc:RequestHeader": [
            "x-kss-cdn:kingsoftcdn"
          ]
        }
      }
    }
  ]
}

2、以下示例向任何用户授予对指定存储空间中的文件执行任何 KS3操作的权限。但是,请求头必须带有x-kss-cdn请求头,但x-kss-cdn请求头的value值不限制。

{
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "ks3:*"
      ],
      "Principal": {
        "KSC": [
          "*"
        ]
      },
      "Resource": [
        "krn:ksc:ks3:::example_bucket",
        "krn:ksc:ks3:::example_bucket/*"
      ],
      "Condition": {
        "StringLike": {
          "ksc:RequestHeader": [
            "x-kss-cdn:*"
          ]
        }
      }
    }
  ]
}

3、以下示例向任何用户授予对指定存储空间中的文件执行任何 KS3操作的权限。但是,请求头不能够带有x-kss-cdn请求头。

{
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "ks3:*"
      ],
      "Principal": {
        "KSC": [
          "*"
        ]
      },
      "Resource": [
        "krn:ksc:ks3:::example_bucket",
        "krn:ksc:ks3:::example_bucket/*"
      ],
      "Condition": {
        "StringNotLike": {
          "ksc:RequestHeader": [
            "x-kss-cdn:*"
          ]
        }
      }
    }
  ]
}

金山云,开启您的云计算之旅

注册有礼