AWS IAM ユーザでのS3バケット作成

AWS IAM ユーザでのS3バケット作成

heroku で画像保存するには容量の制限があるため
Amazon S3 に画像などを保存することに

すでにIAMユーザは作成しているので
まずはIAMユーザでログイン

なお、ログインのときには認証にMFAを導入しているため
ipod touch のアプリ
Authenticator

を使用してログイン

Screenshot from 2016-09-09 22:12:21

しかし、パスワードが正しくても
Your password has expired. Contact your administrator to reset the password.
とメッセージがでるため
一度 root でログインしてパスワードを再設定

ログインしたら
Security & Credentials をクリック

Screenshot from 2016-09-09 22:31:29

するとセキュリティの関係で
このまま root で続けるか、IAMユーザで行うか聞かれるので
Continue to Security Credentials をクリック

Screenshot from 2016-09-09 23:09:24

次にダッシュボードから
Users をクリックし、
パスワードを変更したいユーザにチェックをいれます

Screenshot from 2016-09-09 23:13:57

次に
User Actions をクリックし
Manage Password をクリック

Screenshot from 2016-09-09 23:15:56

するとパスワードをどうしたいのかを聞かれるので
Replace existing password with new custom password
にチェックをいれ、新しいパスワードを設定します

Password に新しいパスワードを
Confirm Password には確認のため
もう一回新しいパスワードを入力します

Screenshot from 2016-09-09 23:18:23

入力が終わったら、画面右下の Apply をクリック
これでパスワード変更ができます

Screenshot from 2016-09-09 23:20:48

次にS3を使うためのポリシー割り当て

とはいっても、管理者権限のIAMアカウントで実験するのは問題ありと思うので
新規にIAMユーザを作成

新規IAMユーザ登録するには
Security Credential で User をクリックし
Create New Users をクリックします

Screenshot from 2016-09-10 07:35:44

これでユーザ名を入力する画面になるので、今回は
S3user
としました

あとは
create をクリックすれば、新規IAMユーザが作成されます

Screenshot from 2016-09-10 07:41:03

作成したときに
Show User Security Credentials
をクリックすることで、
AccessKey
Secret Access Key
を表示することができます。

これは後で使うのでメモしておきましょう

確認ができたら、Download Credentials をクリックします

Screenshot from 2016-09-10 07:42:38

これにより、これらの情報をCSV ファイルとしてダウンロードすることができます

必要な値の確認ができたら、close を押してこの画面を閉じます

これでユーザの作成ができたので
今回作成したユーザに S3 にアクセスする権限を与えます

IAMユーザは権限を制限することで安全性を高める仕組みです
これならもしアカウントが流出しても、被害を最小限にすることができます

やり方は、まず作成したユーザをクリックします

Screenshot from 2016-09-10 09:08:23

次に、Permissionsタブにある
Attach Policy をクリック

Screenshot from 2016-09-10 09:10:38

すると権限一覧がでてくるので、今回はS3を全部使える権限の
AmazonS3FullAccess
にチェックを入れ
Attach Policy をクリックします

Screenshot from 2016-09-10 09:14:54

これによりユーザ権限に AmazonS3FullAccess が追加されます

Screenshot from 2016-09-10 09:17:41

次に作成したIAMユーザにパスワードを設定します

Security Credentials タブをクリックし
Manage Password をクリックします

Screenshot from 2016-09-11 22:09:22

するとパスワード設定画面になります

自動でパスワードを設定してもらいたいのなら
Assign an auto-generated password をチェックしますが、
私の場合は KeepassX でパスワードを生成したいので、
Assign a custom password を選びパスワードを設定しました

設定したら、画面右下の Apply をクリックすれば反映されます

Screenshot from 2016-09-11 22:13:02

これで Password の設定が Yes になります

さらに2段階認証をつけてセキュリティを向上させるために
Manage MFA Device をクリック

Screenshot from 2016-09-11 22:17:31

今回は iphone や Android のアプリを使用するので
A virtual MFA device を選択して 
Next Step をクリック

Screenshot from 2016-09-11 22:19:47

すると解説がでます
すでにアプリをインストールしているので、これは
Next Step をクリック

Screenshot from 2016-09-11 22:25:09

すると画面にQRコードが表示されるので
これをアプリで読み取り
Authentication Code 1
Authentication Code 2
に値を入力し
Activate Virtual MFA をクリックします

Screenshot from 2016-09-11 22:26:52

なお、
Authentication Code 1
で表示された値を入力し

Authentication Code 2
へ次に表示された値をいれるようになります

詳しくは
多要素認証(MFA)仮想デバイスの有効化
を参考にしましょう

成功すると
ダイアログがでるので
Finish をクリックします

Screenshot from 2016-09-12 00:02:53

ここまでできたら、URLを確認し、作成した S3user でログインします
ログインURLの確認は
dashbord をクリックすると表示されます

Screenshot from 2016-09-12 00:16:51

AWSコンソールにログインしたら
S3をクリックします

Screenshot from 2016-09-12 00:22:28

まずはバケットを作成しないと使えないので
Create Bucket をクリック

Screenshot from 2016-09-12 00:25:19

Bucket Name には 任意の名前なので
今回は s3-user-bucket
Region: は Tokyo を選びます

そして Create をクリックすると作成されます

Screenshot from 2016-09-18 10:53:22

これでバケットが作成されます

Screenshot from 2016-09-18 10:54:51

次にファイルのアップロードを行います

作成されたバケット名をクリックすると現状が表示されます

現状では何もないので、upload をクリックし、ファイルをアップロードします

Screenshot from 2016-09-18 11:02:28

次にファイルをアップロードするので Add File をクリック

Screenshot from 2016-09-18 11:06:02

あとは好きなファイルをアップロードします

これで選んだファイル名が表示されるので
Start Upload をクリック

Screenshot from 2016-09-18 11:07:59

これで S3 にファイルがアップロードされます

Screenshot from 2016-09-18 11:10:56

AmazonS3 でサイト運用

AmazonS3 でサイト運用
#16 S3でウェブサイトを運用する
http://dotinstall.com/lessons/basic_aws/9516
を参考に
S3でのサイト運営について学習
まず、Create Bucket でバケット作成
Bucket Name には
独自ドメインを設定する
作成できたら
バケットの設定を変更する
Permissions
Website
この2つを変更する
まず、permissions で
Add bucket policy
にチェックを入れる
すると
sample bucket policys へとんで
2番目をコピーしてはりつける
そして、bucket の部分を独自ドメインに変更
このbucket policy を設定することで
公開する設定を毎回やらなくてよくなる
次に web site
これは
Enabled にチェックをいれて
index Document に
最初に表示するファイル
大抵の場合は
自作した index.html になるので
index.html を記述
あと、Error Documents には
エラーのときのファイルを指定するけど
とくに指定しなくても稼働はできる
設定終了後、save をクリック
あとは、必要なファイルをアップロードしていけばサイトの出来上がり

Amazon のストレージサービス S3

Amazon のストレージサービス
#15 ストレージサービスを使ってみよう
http://dotinstall.com/lessons/basic_aws/9515
を参考に
S3について学習
Create Bucket で入れものを作成
注意点は、ほかの人と被らない名前にすること
これは twitter アプリとかと同じ
このバケットの中にファイルやフォルダを作成する
ファイルの保存先として使えるけど
外部からアクセスできるようにするには
アップロードしたファイルを
右クリックして
Make Public
として公開状態にしないとダメ
一般的に web サービスとして使うには
SDKを使うことになる
Amazon SDK for PHP など
を使う
http://aws.amazon.com/jp/php/
に紹介が掲載されている