すらいむがあらわれた

こまんど >  たたかう  にげる

AWS SDK for .NETを使ってのCloudFront Distributionの作成(S3 Originの場合)

AWS SDK for .NETを使用してAmazon CloudFrontのDistributionを作成します。

CloudFrontはAWSで提供されているContents Delivery Networkです。
Amazon CloudFront Documentation
http://aws.amazon.com/jp/documentation/cloudfront/

Amazon CloudFront 詳しい説明
http://aws.amazon.com/jp/cloudfront/#details

Amazon CloudFront FAQ
http://aws.amazon.com/jp/cloudfront/faqs/

現在 CloudFrontのDistoributionのOrigin ServerにはAmazon S3とその他のサーバーのどちらかを指定できます。

以下はOrigin ServerにAmazon S3を使用する場合(S3 Origin)のサンプルコードです。
https://gist.github.com/raw/721484/d664a926d15068b7ad7dfe17ca17ca8af9b95990/CreateCloudFrontDistributionS3Bucket.cs

・CreateCloudDistributionS3Originメソッド
S3バケット上でeveryoneに公開されているコンテンツを配信できるDistoributionを作成します。

・CreateCloudFrontPriveteContentDistributionS3Originメソッド
S3上のコンテンツがインターネット上から直接見えないようにアクセス制限をかけた上でコンテンツ配信するDistoributionを作成します。

あらかじめCloudFront Dictribution用のアクセス権( CloudFront Origne Access Identity、以下OAI)を生成しておき、
Origin ServerとなるS3バケットのコンテンツに設定し、読み取りのアクセス権をあたえます。
そして、S3バケットのコンテンツはインターネット上から直接見えないようにeveryoneの読み取りアクセス権を削除します。

このメソッドでDistributionの作成時にS3バケットで読み取り権限を設定されているOAIを指定し、Distributionを作成します。
これによってこのDistributionはS3バケットにアクセスできるようになり、コンテンツを配信することができます。