CreateSession authorization - Amazon Simple Storage Service

CreateSession authorization

Amazon S3 Express One Zone は、AWS Identity and Access Management (AWS IAM) 認証とセッションベースの認証の両方をサポートしています。

  • S3 Express One Zone でリージョンエンドポイント API オペレーション (バケットレベル、またはコントロールプレーンのオペレーション) を使用するには、セッション管理を必要としない IAM 認証モデルを使用します。アクセス許可はアクションごとに個別に付与されます。詳細については、「S3 Express One Zone 向け AWS Identity and Access Management (IAM)」を参照してください。

  • ゾーンエンドポイント API オペレーション (オブジェクトレベルまたはデータプレーンオペレーション) を使用するには、CreateSession API オペレーションを使用して、データリクエストの低レイテンシー認証に最適化されたセッションを作成および管理します。ッショントークンを取得して使用するには、アイデンティティベースのポリシーまたはバケットポリシーでディレクトリバケットの s3express:CreateSession アクションを許可する必要があります。詳細については、「S3 Express One Zone 向け AWS Identity and Access Management (IAM)」を参照してください。Amazon S3 コンソール、AWS Command Line Interface (AWS CLI)、または AWS SDK を使用して S3 Express One ゾーンにアクセスしている場合、S3 Express One Zone はユーザーに代わってセッションを作成します。

Amazon S3 REST API を使用する場合、CreateSession API オペレーションを使用して、アクセスキー ID、シークレットアクセスキー、セッショントークン、有効期限を含む一時的なセキュリティ認証情報を取得できます。一時的な認証情報は、IAM ユーザーの認証情報など、長期的なセキュリティ認証情報を使用するのと同じアクセス許可を提供します。ただし、一時的なセキュリティ認証情報にはセッショントークンが含まれている必要があります。

セッションモード

セッションモードはセッションの範囲を定義します。バケットポリシーでは、s3express:SessionMode 条件キーを指定して、ReadWrite セッションや ReadOnly セッションを作成できるユーザーを制御できます。ReadWriteReadOnly の詳細については、「Amazon S3 API リファレンス」の「CreateSessionx-amz-create-session-mode パラメータ」を参照してください。バケットポリシー作成の詳細については、「S3 Express One Zone のディレクトリバケットポリシーの例」を参照してください。

セッショントークン

一時的なセキュリティ認証情報を使用して呼び出しを行う場合、呼び出しにはセッショントークンを含める必要があります。セッショントークンは一時的な認証情報とともに返されます。セッショントークンの範囲はディレクトリバケットに限定され、セキュリティ認証情報が有効で有効期限が切れていないことを確認するために使用されます。セッションを保護するため、一時的なセキュリティ認証情報は 5 分後に期限切れになります。

CopyObject および HeadBucket

一時的なセキュリティ認証情報の範囲は特定のディレクトリバケットに限定され、特定のディレクトリバケットに対するすべてのゾーン (オブジェクトレベル) オペレーション API 呼び出しで自動的に有効になります。その他のゾーンエンドポイント API 操作とは異なり、CopyObjectHeadBucketCreateSession 認証を使用しません。すべての CopyObject リクエストと HeadBucket リクエストは IAM 認証情報を使用して認証され、署名される必要があります。ただし、その他のゾーンエンドポイント API オペレーションと同様に CopyObjectHeadBuckets3express:CreateSession による承認が引き続き行われます。

詳細については、「Amazon Simple Storage Service API リファレンス」の「CreateSession」を参照してください。