製品アップデート情報
製品のお知らせ
cos:PutObjectアクションの権限付与が完了することを表します。このうち、qcs:ipであり、発効条件の種類がIPであることを表します。ip_equalであり、発効条件の判断方法がIPアドレスの同一性であることを表します。["10.217.182.3/24","111.21.33.72/24"]であり、発効条件判断の規定値を表します。ユーザーが配列の中の任意のIPがあるネットワークセグメントに属している場合、条件判断はすべてtrueとなります。{"version":"2.0","statement":[{"principal":{"qcs":["qcs::cam::uin/1250000000:uin/1250000001"]},"effect":"allow","action":["name/cos:PutObject"],"resource":["qcs::cos:ap-guangzhou:uid/1250000000:examplebucket-1250000000/*"],"condition":{"ip_equal":{"qcs:ip":["10.217.182.3/24","111.21.33.72/24"]}}}]}
条件キー | 適用リクエスト | 意味 | タイプ |
すべてのリクエスト | リクエストにHTTPSプロトコルが適用されているかどうか確認 | Boolean | |
すべてのリクエスト | リクエスト元のIPネットワークセグメント | IP | |
すべてのhttpsリクエスト | httpsリクエストに使用しているTLSバージョン | Numeric | |
すべてのリクエスト | リクエストのHostヘッダー | String |
cos:content-typeは、リクエストヘッダーContent-Typeを使用する必要があるアップロードクラスのリクエスト(PutObjectなど)に適用できます。条件キーcos:response-content-typeはGetObjectオブジェクトにのみ適用できます。このリクエストのみがリクエストパラメータresponse-content-typeをサポートしているためです。条件キー | 適用リクエスト | リクエストヘッダー/リクエストパラメータの確認 | タイプ |
PutObject PostObject InitiateMultipartUpload | リクエストヘッダー:x-cos-storage-class | String | |
GetObject DeleteObject PostObjectRestore PutObjectTagging GetObjectTagging DeleteObjectTagging HeadObject | リクエストパラメータ:versionid | String | |
GetBucket GetBucketObjectVersions ListMultipartUploads ListLiveChannels | リクエストパラメータ:prefix | String | |
PutObject PutObject-Copy PostObject PutObjectACL PutBucket PutBucketACL InitiateMultipartUpload | リクエストヘッダー:x-cos-acl | String | |
このリクエストは適用範囲が広いため、リクエストボディ付きのリクエストなどの代表的なリクエストに注目 | リクエストヘッダー:Content-Length | Numeric | |
このリクエストは適用範囲が広いため、リクエストボディ付きのリクエストなどの代表的なリクエストに注目 | リクエストヘッダー:Content-Type | String | |
GetObject | リクエストパラメータ:response-content-type | String | |
PutBucket PutBucketTagging | リクエストヘッダー:x-cos-tagging リクエストパラメータ:tagging | String | |
PutObject PutObject-Copy InitiateMultipartUpload CompleteMultipartUpload | リクエストヘッダー:x-cos-forbid-overwrite | String | |
PutObject PutObject-Copy InitiateMultipartUpload PutObjectRetention | リクエストヘッダー:x-cos-object-lock-mode リクエストボディのフィールド:PutObjectRetentionリクエストボディのRetention.Mode | String | |
PutObject PutObject-Copy InitiateMultipartUpload PutObjectRetention | リクエストヘッダー:x-cos-object-lock-remaining-retention-days リクエストボディのフィールド:PutObjectRetentionリクエストボディのRetention.RetainUntilDate | Timestamp | |
PutObject PutObject-Copy InitiateMultipartUpload PutObjectRetention | リクエストヘッダー:x-cos-object-lock-remaining-retention-days リクエストボディのフィールド:リクエストボディのフィールド:PutObjectRetentionリクエストボディのRetention.RetainUntilDate | Timestamp | |
PutObject PutObject-Copy PostObject PutObjectACL PutBucket PutBucketACL InitiateMultipartUpload | リクエストヘッダー:x-cos-grant-read | String | |
PutObject PutObject-Copy PostObject PutObjectACL PutBucket PutBucketACL InitiateMultipartUpload | リクエストヘッダー:x-cos-grant-read-acp | String | |
PutObject PutObject-Copy PostObject PutObjectACL PutBucket PutBucketACL InitiateMultipartUpload | リクエストヘッダー:x-cos-grant-write | String | |
PutObject PutObject-Copy PostObject PutObjectACL PutBucket PutBucketACL InitiateMultipartUpload | リクエストヘッダー:x-cos-grant-write-acp | String | |
PutObject PutObject-Copy PostObject PutObjectACL PutBucket PutBucketACL InitiateMultipartUpload | Request header:x-cos-grant-full-control | String |
条件オペレーター | 意味 | タイプ |
string_equal | 文字列一致(大文字と小文字を区別) | String |
string_not_equal | 文字列不一致(大文字と小文字を区別) | String |
string_like | 文字列が類似(大文字と小文字を区別)。現在は文字列の前後へのワイルドカード *の追加をサポートしています(例:image/*) | String |
ip_equal | IP一致 | IP |
ip_not_equal | IP不一致 | IP |
numeric_equal | 数値一致 | Numeric |
numeric_not_equal | 数値不一致 | Numeric |
numeric_greater_than | 数値が大きい | Numeric |
numeric_greater_than_equal | 数値が同じか大きい | Numeric |
numeric_less_than | 数値が小さい | Numeric |
numeric_less_than_equal | 数値が同じか小さい | Numeric |
_if_existを追加することで単一条件オペレーターとすることができます。例えば、string_equal_if_existなどです。条件オペレーターに_if_existが含まれるかどうかで異なる点は、リクエストに、条件キーに対応するリクエストヘッダーまたはリクエストパラメータが含まれない場合にどのように処理されるかの違いです。_if_existを含まない条件演算子(例:string_equal)を使用した場合、該当するリクエストヘッダーまたパラメータがリクエストに含まれていないと、デフォルトで条件に一致せず、Falseとなります。_if_existが含まれる場合、例えばstring_equal_if_existの場合は、リクエストに対応するリクエストヘッダー/リクエストパラメータが含まれないとき、デフォルトで条件にヒットし、Trueとなります。{"version":"2.0","statement":[{"principal":{"qcs":["qcs::cam::uin/1250000000:uin/1250000001"]},"effect":"allow","action":["name/cos:GetObject"],"condition":{"string_equal":{"cos:versionid":"MTg0NDUxNTc1NjIzMTQ1MDAwODg"}},"resource":["qcs::cos:ap-guangzhou:uid/1250000000:examplebucket-1250000000/*"]}]}
string_equalまたはstring_equal_if_existの場合、conditionのヒット状況およびリクエストが承認されるかどうかは下表のとおりとなります。条件オペレーター | リクエスト | conditionにヒットするか | リクエストが承認されるか |
string_equal | versionidなし | FALSE | 不承認 |
string_equal_if_exist | versionidなし | TRUE | 承認 |
string_equal | versionid付き、指定のもの | TRUE | 承認 |
string_equal_if_exist | versionid付き、指定のもの | TRUE | 承認 |
string_equal | versionid付き、指定のもの以外 | FALSE | 不承認 |
string_equal_if_exist | versionid付き、指定のもの以外 | FALSE | 不承認 |
{"version":"2.0","statement":[{"principal":{"qcs":["qcs::cam::uin/1250000000:uin/1250000001"]},"effect":"deny","action":["name/cos:GetObject"],"condition":{"string_equal":{"cos:versionid":"MTg0NDUxNTc1NjIzMTQ1MDAwODg"}},"resource":["qcs::cos:ap-guangzhou:uid/1250000000:examplebucket-1250000000/*"]}]}
string_equalまたはstring_equal_if_existの場合、conditionのヒット状況およびリクエストが拒否されるかどうかは下表のとおりとなります。条件オペレーター | リクエスト | conditionにヒットするか | リクエストが拒否される/拒否されない |
string_equal | versionidなし | FALSE | 拒否されない |
string_equal_if_exist | versionidなし | TRUE | 拒否される |
string_equal | versionid付き、指定のもの | TRUE | 拒否される |
string_equal_if_exist | versionid付き、指定のもの | TRUE | 拒否される |
string_equal | versionid付き、指定のもの以外 | FALSE | 拒否されない |
string_equal_if_exist | versionid付き、指定のもの以外 | FALSE | 拒否されない |
cos:response-content-type条件キーを使用する際、条件値が"image/jpeg"であれば、必ずurlencodeで"image%2Fjpeg"に変換してからバケットポリシーに入力する必要があります。{"version":"2.0","statement":[{"principal":{"qcs":["qcs::cam::uin/1250000000:uin/1250000001"]},"effect":"allow","action":["*"],"resource":["qcs::cos:ap-guangzhou:uid/1250000000:examplebucket-1250000000/*"],"condition":{"string_equal":{"cos:response-content-type":"image%2Fjpeg"}}},{"principal":{"qcs":["qcs::cam::uin/1250000000:uin/1250000001"]},"effect":"deny","action":["*"],"resource":["qcs::cos:ap-guangzhou:uid/1250000000:examplebucket-1250000000/*"],"condition":{"string_not_equal_if_exist":{"cos:response-content-type":"image%2Fjpeg"}}}]}
{"version":"2.0","statement":[{"principal":{"qcs":["qcs::cam::uin/1250000000:uin/1250000001"]},"effect":"allow","action":["*"],"resource":["qcs::cos:ap-guangzhou:uid/1250000000:examplebucket-1250000000/*"],"condition":{"string_equal_if_exist":{"cos:response-content-type":"image%2Fjpeg"}}},{"principal":{"qcs":["qcs::cam::uin/1250000000:uin/1250000001"]},"effect":"deny","action":["*"],"resource":["qcs::cos:ap-guangzhou:uid/1250000000:examplebucket-1250000000/*"],"condition":{"string_not_equal":{"cos:response-content-type":"image%2Fjpeg"}}}]}
{"version":"2.0","statement":[{"principal":{"qcs":["qcs::cam::uin/1250000000:uin/1250000001"]},"effect":"allow","action":["name/cos:GetObject"],"resource":["qcs::cos:ap-guangzhou:uid/1250000000:examplebucket-1250000000/*"],"condition":{"string_equal":{"cos:response-content-type":"image%2Fjpeg"}}},{"principal":{"qcs":["qcs::cam::uin/1250000000:uin/1250000001"]},"effect":"deny","action":["name/cos:GetObject"],"resource":["qcs::cos:ap-guangzhou:uid/1250000000:examplebucket-1250000000/*"],"condition":{"string_not_equal_if_exist":{"cos:response-content-type":"image%2Fjpeg"}}}]}
フィードバック