さて、今これを書いている現在、実はAWSで仮想マシン(EC2)を実際に構築して勉強してるわけなんですが、想像以上にややこしくて結構まいっています。
まぁ愚痴はさておいて、今回は基本でもあり超重要なファクターでもあるアカウントについて書きます。
◆思い出しながら取得の流れを書いてみる
AWSを利用する際の手順は以下の順番です。
①AWSのサイトで登録する。
登録に必要な情報は
・メールアドレス(これがユーザIDのかわりになる)
・支払い情報(ようするにクレカです)
・あと何か色々
②AWSから登録した電話番号に電話がかかってきます。自動音声案内なんですが、要するに本人確認みたいなものだと思います。
③残りの手続きを何かやって完了。登録したメアドにメールが飛んできます。
ここまでやったら早速サインインします。
ここで重要なお話になりますが、AWSで実際にクラウド環境の構築作業をするのは、この登録したアカウントでも可能ではあるんですが、基本的にはこのアカウントはAWSに直接やりとりしたいことがない限りは使いません。
そこでIdentity & Access Management (以下、IAM)からユーザアカウントを作ります。なんかAMIとスペルが似てるのでややこしいですね。
IAMとは一般的なPCのユーザと同義と考えて間違いないです。
で、アクセス権限なんですが、これはIAMユーザごとに設定するわけではなく、IAMポリシーという各種権限のセットから選んで紐づけます。
ポリシーは自作もできますが、すでに用意されているものからも選ぶことができます。
ただしすでに用意されているものはものすごい数があり、どれを選んでいいかわからないので、とりあえず色々やってみたいならAdministratorAccessというポリシーを選択しておけば間違いないです。
自作する場合ですが、JSON方式という聞きなれない記述方法で書かなければなりません。
ちなみに上にあげたAdministratorAccessのポリシーはJSON方式で
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": "*",
"Resource": "*"
}
]
}
となっています。フォントの色を変えたのは特に意味ないです。
ちなみにIAMユーザに直接ポリシーを紐づける方法とは別に、IAMグループを作成し、このIAMグループにポリシーを紐づけ、IAMユーザはIAMグループに所属させる形でポリシーを紐づけるやり方もあります。多数のユーザを管理するならこちらの方がやりやすいでしょう(たぶん)。
例えば管理者用のポリシーを紐づけたIAMグループを作ります。で、実際に権限を与えたいユーザが3人いるなら、その3人のIAMユーザを全部、このIAMグループに所属させます。なんかうまい説明したつもりなんですが上に説明したことと同じですね。
で、IAMユーザには当然パスワードも設定します。パスワードのルールも色々カスタマイズできるのですが、まぁセキュリティにうるさい企業なら、たいていは初回ログイン時にIAMユーザ自身にパスワードを変更させるオプションを選ぶんじゃないでしょうか。
さて、IAMユーザにはAWSコンソールアクセス用のURLが発行されます。
IAMユーザはそのURLからAWSにアクセスし、いろんな作業をやります。もちろん権限を与えられていない操作はできません。
ちなみにURLは https://"アカウントID".signin.aws.amazon.com/console となります。このアカウントIDはユニーク(一意)な数字です。ぶっちゃけIAMユーザはユーザ名、パスワードだけでなく、このアカウントIDも知っていないと使えないわけですな。
まぁ愚痴はさておいて、今回は基本でもあり超重要なファクターでもあるアカウントについて書きます。
◆思い出しながら取得の流れを書いてみる
AWSを利用する際の手順は以下の順番です。
①AWSのサイトで登録する。
登録に必要な情報は
・メールアドレス(これがユーザIDのかわりになる)
・支払い情報(ようするにクレカです)
・あと何か色々
②AWSから登録した電話番号に電話がかかってきます。自動音声案内なんですが、要するに本人確認みたいなものだと思います。
③残りの手続きを何かやって完了。登録したメアドにメールが飛んできます。
ここまでやったら早速サインインします。
ここで重要なお話になりますが、AWSで実際にクラウド環境の構築作業をするのは、この登録したアカウントでも可能ではあるんですが、基本的にはこのアカウントはAWSに直接やりとりしたいことがない限りは使いません。
そこでIdentity & Access Management (以下、IAM)からユーザアカウントを作ります。なんかAMIとスペルが似てるのでややこしいですね。
IAMとは一般的なPCのユーザと同義と考えて間違いないです。
で、アクセス権限なんですが、これはIAMユーザごとに設定するわけではなく、IAMポリシーという各種権限のセットから選んで紐づけます。
ポリシーは自作もできますが、すでに用意されているものからも選ぶことができます。
ただしすでに用意されているものはものすごい数があり、どれを選んでいいかわからないので、とりあえず色々やってみたいならAdministratorAccessというポリシーを選択しておけば間違いないです。
自作する場合ですが、JSON方式という聞きなれない記述方法で書かなければなりません。
ちなみに上にあげたAdministratorAccessのポリシーはJSON方式で
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": "*",
"Resource": "*"
}
]
}
となっています。フォントの色を変えたのは特に意味ないです。
ちなみにIAMユーザに直接ポリシーを紐づける方法とは別に、IAMグループを作成し、このIAMグループにポリシーを紐づけ、IAMユーザはIAMグループに所属させる形でポリシーを紐づけるやり方もあります。多数のユーザを管理するならこちらの方がやりやすいでしょう(たぶん)。
例えば管理者用のポリシーを紐づけたIAMグループを作ります。で、実際に権限を与えたいユーザが3人いるなら、その3人のIAMユーザを全部、このIAMグループに所属させます。なんかうまい説明したつもりなんですが上に説明したことと同じですね。
で、IAMユーザには当然パスワードも設定します。パスワードのルールも色々カスタマイズできるのですが、まぁセキュリティにうるさい企業なら、たいていは初回ログイン時にIAMユーザ自身にパスワードを変更させるオプションを選ぶんじゃないでしょうか。
さて、IAMユーザにはAWSコンソールアクセス用のURLが発行されます。
IAMユーザはそのURLからAWSにアクセスし、いろんな作業をやります。もちろん権限を与えられていない操作はできません。
ちなみにURLは https://"アカウントID".signin.aws.amazon.com/console となります。このアカウントIDはユニーク(一意)な数字です。ぶっちゃけIAMユーザはユーザ名、パスワードだけでなく、このアカウントIDも知っていないと使えないわけですな。