

# リクエストの認証: POST (AWS 署名バージョン 4) を使用したブラウザベースのアップロード
<a name="sigv4-authentication-HTTPPOST"></a>

Amazon S3 は HTTP POST リクエストをサポートしているため、ユーザーはコンテンツを Amazon S3 に直接アップロードできます。Amazon S3 にデータを保存するために HTTP POST を使用してコンテンツをアップロードすると、簡単にアップロードでき、アップロードのレイテンシーが低減されます。このセクションでは、HTTP POST リクエストを認証する方法について説明します。HTTP POST リクエスト、フォームの作成方法、POST ポリシーの作成方法、および例の詳細については、「[POST (AWS 署名バージョン 4) を使用したブラウザベースのアップロード](sigv4-UsingHTTPPOST.md)」を参照してください。

HTTP POST リクエストを認証するには、次の手順を実行します。

 

1. Amazon S3 がリクエストを受信したときに、署名を再計算するために使用できる署名および関連情報を提供するために、フォームには次のフィールドが含まれている必要があります。    
[See the AWS documentation website for more details](http://docs.aws.amazon.com/ja_jp/AmazonS3/latest/developerguide/sigv4-authentication-HTTPPOST.html)

1. POST ポリシーには以下の要素が含まれます。    
[See the AWS documentation website for more details](http://docs.aws.amazon.com/ja_jp/AmazonS3/latest/developerguide/sigv4-authentication-HTTPPOST.html)

1. 署名の計算において、POST ポリシーが署名する文字列です。

## 署名の計算
<a name="sigv4-signature-calc-post"></a>

 次の図は、署名計算プロセスを示しています。

![StringToSign、SigningKey、および Signature ステップを使用した AWS 署名計算プロセス。](http://docs.aws.amazon.com/ja_jp/AmazonS3/latest/developerguide/images/sigV4-post.png)






**署名を計算するには**

1. UTF-8 エンコーディングを使用してポリシーを作成します。

1. UTF-8 エンコードされたポリシーを Base64 に変換します。その結果が、署名する文字列です。

1. 署名する文字列の HMAC-SHA256 ハッシュとして署名を作成します。署名キーをハッシュ関数のキーとして提供します。

1. 16 進エンコードを使用して署名をエンコードします。

HTML フォーム、セキュリティポリシー、および例の作成の詳細については、次のサブトピックを参照してください。


+ [HTML フォームの作成 (AWS 署名バージョン 4 を使用)](sigv4-HTTPPOSTForms.md)
+ [POST ポリシー](sigv4-HTTPPOSTConstructPolicy.md)
+ [例: HTTP POST (AWS 署名バージョン 4) を使用したブラウザベースのアップロード](sigv4-post-example.md)