2017-09-20 3 views
1

クラウドフロント分布を作成します。私は、作成したS3バケットのいずれかにソースを設定しました。私は、クラウドフロントを作成したときに「バケットアクセスを制限する」を「はい」に設定しました。このオプションの隣に表示される情報は、「Amazon S3 URLではなくCloudFront URLを使用してユーザーがAmazon S3コンテンツに常にアクセスするようにしたい場合は、はい」をクリックしてもS3バケットにアクセスできます。クラウドフロントURLにアクセスしようとすると、私は以下のように見えます。私は雲のフロント分布を作成するために、ライアンKroonenburgのチュートリアルに従っ

<Error> 
<Code>AccessDenied</Code> 
<Message>Access Denied</Message> 
<RequestId>56299E51ECB22FF0</RequestId> 
<HostId> 
sv5htrLwzMPiwZWyu4nUh6+Z8ZM69rC/fxNiC5zLR5rms9X+cRnoSeHJnElx7A7s9dCr36lRmU4= 
</HostId> 
</Error> 
+1

それはその権限エラーのように思えます。あなたがプライベートコンテンツを提供するために、セットアップCloudFrontのオリジンアクセスアイデンティティに次のガイドと一緒にクロスチェックすることができますhttp://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/private-content-restricting-access-to-s3.html – Ashan

答えて

4

AWS CloudFrontを経由プライベートS3のコンテンツを提供し設定するには、複数の構成は、両方のS3とCloudFrontをで、必要とされています。

  • S3バケットへのアクセスを許可するCloudFront起点アクセスID(特別なCloudFrontユーザー)を作成します。これにより、アクセスを許可するS3 ACLにユーザーが作成されます。
  • CloudFrontのにYESをクリックする

情報メッセージは関係なくS3(からコンテンツにアクセスすることをCloudFrontのから元のアクセスIDを作成することであるパブリック(匿名アクセスを削除する設定S3 ACLパーミッション)によってS3バケットへのアクセスを制限バケツはプライベートまたはパブリックです)。

ユーザーは常に[はい]をクリックし、CloudFrontのURLのではなく、Amazon S3のURLを使用して、Amazon S3のコンテンツ にアクセスすることを要求します。

バケットを非公開にするには、S3バケットの[ACL permissions]タブを使用してアクセスを制御し、CloudFront用のS3(Origin Access Identity User)にアクセスする新しいタイプのユーザーが表示されていることを確認します。

あなたがアクセスエラーを受信して​​いるので、私は、ルート原因を見つけるために、文書または物品のいずれかを通過し、また、あなたが将来の問題のトラブルシューティングを行うことができるように、それは下にどのように動作するかを理解することをお勧めします。

+0

詳しい回答はAshanに感謝します。今私はクラウドフロントを使ってS3バケットにアップロードした画像にアクセスしようとしています。私はs3バケットに完全な読み取り/書き込み権限を与え、私はS3バケットURLを使用して画像にアクセスすることができます。ディストリビューションをセットアップするとき、私は「バケット上での許可の読み取り許可」をyesに設定しています。ただし、Origin Settingsを編集するたびに、「いいえ、権限を更新します」と表示されます。だから私は値がすでにyesに設定されているかどうかわかりません。今でもクラウドフロントエンドポイントを使用して画像にアクセスできません。 –

+0

@PunterVickyは、バケットポリシーを調べて、オリジンアクセスIDに関連するステートメントがあるかどうかを調べます。 –

関連する問題