

# AWS Signature Version 4 (SigV4) での認証固有ポリシーキー
<a name="s3-outposts-bucket-policy-s3-sigv4-conditions"></a>

次の表に、Amazon S3 on Outposts で使用する AWS Signature Version 4 (SigV4) 認証に関連する条件キーを示します。これらの条件をバケットポリシーに追加して、Signature Version 4 を使用してリクエストが認証された際の特定の動作を適用できます。エンドポイントポリシーの例については、「[Signature Version 4 関連の条件キーを使用するバケットポリシーの例](#s3-outposts-bucket-policy-sig-v4-condition-key-example)」を参照してください。Signature Version 4 によるリクエストの認証の詳細については、「Amazon Simple Storage Service API リファレンス」の「[Authenticating requests (AWS Signature Version 4)](https://docs.aws.amazon.com/AmazonS3/latest/API/sig-v4-authenticating-requests.html)」(リクエストの認証 ( Signature Version 4)) を参照してください。**


| 適用できるキー | 説明 | 
| --- | --- | 
| `s3-outposts:authType` | S3 on Outposts では、さまざまな認証方式をサポートしています。受信するリクエストが特定の認証方法を使用するように制限するには、このオプションの条件キーを使用します。例えば、この条件キーを使用すると、リクエスト認証のために HTTP `Authorization` ヘッダーのみの使用を指定できます。<br />有効な値: <br />`REST-HEADER` <br />`REST-QUERY-STRING`  | 
| `s3-outposts:signatureAge` | 認証されたリクエストの中で署名が有効である時間長 (ミリ秒単位)。<br />この条件は、署名付き URL でのみ機能します。<br />Signature Version 4 では、署名キーは最大 7 日間有効です。したがって、署名の有効期間も最大 7 日間となります。詳細については、「*Amazon Simple Storage Service API リファレンス*」の「[リクエスト署名の導入](https://docs.aws.amazon.com/AmazonS3/latest/API/sig-v4-authenticating-requests.html#signing-request-intro)」を参照してください。この条件を使用すると、署名の有効期間をさらに制限できます。<br />値の例: `600000` | 
| `s3-outposts:x-amz-content-sha256` | この条件キーを使用すると、バケット内にある署名されていないコンテンツを許可しません。<br />`Authorization` ヘッダを使用するリクエストに対し Signature Version 4 を使用する場合、署名計算に `x-amz-content-sha256` ヘッダーを追加した後、その値をハッシュペイロードに設定します。<br />この条件キーをバケットポリシーで使用すると、ペイロードに署名がないアップロードを、すべて拒否することができます。例: [See the AWS documentation website for more details](http://docs.aws.amazon.com/ja_jp/AmazonS3/latest/s3-outposts/s3-outposts-bucket-policy-s3-sigv4-conditions.html)<br />有効な値: `UNSIGNED-PAYLOAD` | 

## Signature Version 4 関連の条件キーを使用するバケットポリシーの例
<a name="s3-outposts-bucket-policy-sig-v4-condition-key-example"></a>

次の例を実行するには、{{`user input placeholders`}} をユーザー自身の情報に置き換えます。

**Example : `s3-outposts:signatureAge`**  
次のバケットポリシーは、署名が作成されてから 10分以上経過している場合、`example-outpost-bucket` 内のオブジェクトに対する S3 on Outposts の署名付き URL リクエストを拒否します。    
****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "Deny a presigned URL request if the signature is more than 10 minutes old",
            "Effect": "Deny",
            "Principal": {"AWS":"{{444455556666}}"},
            "Action": "s3-outposts:*",
            "Resource": "arn:aws:s3-outposts:{{us-east-1}}:{{111122223333}}:outpost/{{op-01ac5d28a6a232904}}/bucket/{{example-outpost-bucket}}/object/*",
            "Condition": {
                "NumericGreaterThan": {"s3-outposts:signatureAge": 600000},
                "StringEquals": {"s3-outposts:authType": "REST-QUERY-STRING"}
            }
        }
    ]
}
```

**Example : `s3-outposts:authType`**  
次のバケットポリシーでは、リクエスト認証に `Authorization`ヘッダーを使用しているリクエストのみを許可します。署名付き URL リクエストは、クエリパラメーターを使用してリクエストと認証情報を指定しているため、すべての署名付き URL リクエストは拒否されます。詳細については、「*Amazon Simple Storage Service API リファレンス*」の「[認証メソッド](https://docs.aws.amazon.com/AmazonS3/latest/API/sig-v4-authenticating-requests.html)」を参照してください。    
****  

```
{
   "Version":"2012-10-17",		 	 	 
   "Statement": [
         {
               "Sid": "Allow only requests that use the Authorization header for request authentication. Deny presigned URL requests.",
               "Effect": "Deny",
               "Principal": {"AWS":"{{111122223333}}"},
               "Action": "s3-outposts:*",
               "Resource": "arn:aws:s3-outposts:{{us-east-1}}:{{111122223333}}:outpost/{{op-01ac5d28a6a232904}}/bucket/{{example-outpost-bucket}}/object/*",
               "Condition": {
                     "StringNotEquals": {
                           "s3-outposts:authType": "REST-HEADER"
                     }
               }
         }
   ]
}
```

**Example : `s3-outposts:x-amz-content-sha256`**  
次のバケットポリシーは、署名付き URL を使用するアップロードなど、未署名のペイロードを含むすべてのアップロードを拒否します。詳細については、「Amazon Simple Storage Service API リファレンス」の「[Authenticating Requests](https://docs.aws.amazon.com/AmazonS3/latest/API/sigv4-query-string-auth.html#query-string-auth-v4-signing)」(認証リクエスト) 「[Authentication methods](https://docs.aws.amazon.com/AmazonS3/latest/API/sig-v4-authenticating-requests.html)」(認証メソッド) を参照してください。    
****  

```
{
   "Version":"2012-10-17",		 	 	 
   "Statement": [
         {
               "Sid": "Deny uploads with unsigned payloads.",
               "Effect": "Deny",
               "Principal": {"AWS":"{{111122223333}}"},
               "Action": "s3-outposts:*",
               "Resource": "arn:aws:s3-outposts:{{us-east-1}}:{{111122223333}}:outpost/{{op-01ac5d28a6a232904}}/bucket/{{example-outpost-bucket}}/object/*",
               "Condition": {
                     "StringEquals": {
                           "s3-outposts:x-amz-content-sha256": "UNSIGNED-PAYLOAD"
                     }
               }
         }
   ]
}
```