ポリシーでの条件の指定

条件はポリシーが有効になるタイミングを規定します。条件は演算子およびキーと値のペアで構成されます。

条件はキーと値のペアを使用して評価されます。1つのCondition要素に複数の条件を含め、各条件に複数のキーと値のペアを含めることができます。条件ブロックの形式は次のとおりです。

Condition: {
     condition_type: {
          condition_key: condition_values

次の例では、IpAddress条件でSourceIp条件キーを使用しています。

"Condition": {
    "IpAddress": {
      "aws:SourceIp": "54.240.143.0/24"
		...
},
		...

サポートされる条件演算子

条件演算子は次のように分類されます。
  • 文字列
  • 数値
  • ブーリアン
  • IPアドレス
  • Nullチェック
条件演算子 説明
StringEquals キーを文字列値と比較し、完全一致であるかを確認します(大文字と小文字の区別あり)。
StringNotEquals キーを文字列値と比較し、不一致であるかを確認します(大文字と小文字の区別あり)。
StringEqualsIgnoreCase キーを文字列値と比較し、完全一致であるかを確認します(大文字と小文字の区別なし)。
StringNotEqualsIgnoreCase キーを文字列値と比較し、不一致であるかを確認します(大文字と小文字の区別なし)。
StringLike キーを文字列値と比較し、完全一致であるかを確認します(大文字と小文字の区別あり)。ワイルドカード文字の「*」と「?」を 使用できます。
StringNotLike キーを文字列値と比較し、不一致であるかを確認します(大文字と小文字の区別あり)。ワイルドカード文字の「*」と「?」を 使用できます。
NumericEquals キーを数値と比較し、完全一致であるかを確認します。
NumericNotEquals キーを数値と比較し、不一致であるかを確認します。
NumericGreaterThan キーを数値と比較し、より大の一致であるかを確認します。
NumericGreaterThanEquals キーを数値と比較し、より大か等しいの一致であるかを確認します。
NumericLessThan キーを数値と比較し、より小の一致であるかを確認します。
NumericLessThanEquals キーを数値と比較し、より小か等しいの一致であるかを確認します。
Bool キーをブール値と比較し、trueまたはfalseの一致であるかを確認します。
IpAddress キーをIPアドレスまたはIPアドレスの範囲と比較します。
NotIpAddress キーをIPアドレスまたはIPアドレスの範囲と比較し、不一致であるかを確認します。
注意: NotipAddress演算子を使用してIPアドレスの配列(範囲ではなく)を指定すると、少なくとも1つのIPアドレスがキーと等しくならないため、条件は常にtrueになります。このため、ステートメントでEffectがDenyに設定されている場合は、配列内のすべてのIPアドレスへのアクセスが拒否されます。
Null 現在の要求のコンテキストに条件キーがあるかどうかを確認します。

サポートされる条件キー

カテゴリ 適用される条件キー 説明
IPの演算子 aws:SourceIp 要求の送信元のIPアドレスと比較します。バケットまたはオブジェクトの処理に使用できます。
注: S3要求が管理ノードおよびゲートウェイ ノード上のロード バランサ サービスを介して送信された場合は、ロード バランサ サービスのアップストリームのIPアドレスと比較します。
注: サードパーティ製の非透過型ロード バランサを使用している場合は、そのロード バランサのIPアドレスと比較します。X-Forwarded-Forヘッダーは、有効性を確認できないため無視されます。
リソース / ID aws:username 要求の送信者のユーザ名と比較します。バケットまたはオブジェクトの処理に使用できます。
S3:ListBucket

および

S3:ListBucketVersions権限

s3:delimiter GET Bucket要求またはGET Bucket Object versions要求で指定されたdelimiterパラメータと比較します。
s3:max-keys GET Bucket要求またはGET Bucket Object versions要求で指定されたmax-keysパラメータと比較します。
s3:prefix GET Bucket要求またはGET Bucket Object versions要求で指定されたprefixパラメータと比較します。