これからAWSを触ろうとする人こそ、IAM本を読もう

はじめに:最近話題のIAM本を読みました

読者モニターの抽選に当たりました。やったぜ。

なんと、本当にありがたいことに、著者ご本人様よりキャンペーンのご案内が!!懺悔したらリプが飛んできました。即応募。 そんなこんなで、僭越ながら「IAM本」書評記事、書いてまいります

もくじ

この本を読むモチベーションについて

※このセクション、ポエムです

ぼくらはリソースを借りているにすぎないし、危ない借り方なんかしちゃいかん

当たり前なのだが、クラウドの計算リソースをお金を払って借りている。 計算リソースといってもコンピュータなので、安いわけではない。

ただ、問題なのが、最近プログラミングはじめました→AWSいじってみたいです!みたいな人がいたときに、

  • サーバー代の相場がわからないのでリソースを借りる際のコストの想定が困難*1
  • アクセスキーなど、認証・認可・権限まわりに対して理解が浅い可能性あり
  • etc..

といった状態に陥ってしまう懸念がある。 もっともクリティカルな問題が上から2番目で、IAMのアクセスキーをGithubに誤ミットしてAWSが不正利用されて、100万円請求されたという問題が発生している。*2(これについてはIAM本内で言及あり) てなわけで、自分の意志とは関係なく勝手に借りられる危険性をはらんでいるという自覚が必要なのである。

時はクラウド時代、セキュリティの知識と実践方法を更新せねば

もうクラウドが当たり前な時代になったので「ミスってAWSに100万請求されそうになるなら自前で」というわけにもいかない。 クラウドリソースは当たり前のように使うし、クラウドネイティブなアーキテクチャも当たり前になっていく。 これからの”当たり前”を”安全に”使えるようなナレッジは、どうしても必要なのである。 そして、AWSのセキュリティは、IAMの運用・設計が適切がどうかにかかっているのである!

AWSを扱う上でセキュリティは最重要項目の一つであり、AWSのセキュリティの半分はIAMの適切な設計と運用に掛かっていると言っても過言ではありません。 出典:IAMのマニアックな話 佐々木拓郎著

IAM本の守備範囲

ここから「IAM本」のおはなし

1章から3章まででIAMの概要とIAMユーザの作成

まず、IAMの概要とチュートリアルがあり、ここまでは

books.rakuten.co.jp

こちらでもある程度言及されている。(AWSアカウント作成手順などはIAM本では言及されないので注意) そしてIAM本の親切なポイントが、 * 「ポリシーの作成 → グループの作成 → ユーザの作成」 という順でチュートリアルを組んでいる点である。これによって、「いきなりIAMを作って権限を直接付与するとあとあと管理がめんどくさくなる」という問題を回避できる。

4章からはIAM運用のプラクティスについて

当たり前だが、IAM(Identity and Access Management)に特化しているので、”安全”かつ"効率的に"というところまで言及している。 具体的には、

などである。 どれも実践的な内容なので「理屈はわかるが、手が動かない」という部分がスルッと解消される*3

やはり、この本のすごいところは実践的なプラクティスの多さだと思う。 デザインパターンごとのユースケースに言及しているところがとてもありがたい(ありがたい)。 第7章のIAMの運用も、「現実に即した運用」をテーマにしているので、知識を実戦投入しやすい。

なんと親切な付録A

ここでは、アカウント開設時に設定すべき項目のチェックリストが掲載されている。 IAMグループ、IAMユーザの作成を含め12項目挙げられている*4。 これからAWSを触る人向けの親切設計!!

IAM本で得られるもの

  • IAM管理の必要性
  • IAMユーザとグループの作成、ポリシーとロールの付与
  • デザインパターンに沿ったIAMユーザ・グループの設計方法
  • デザインパターンごとのユースケース
  • MFA使ってないユーザの権限を制限する方法
  • IAM管理に求められるセキュリティ要件の知識
  • CloudFormationによるポリシー付与のテンプレート化

IAM本で得られないもの

  • AWSアカウントの作成方法(まあいらんやろ)
  • IAMの認証系の内部構造

まとめ:これからAWSを触ろうとする人こそ、IAM本を読もう

本書は、AWS・IAMを効率的に安全な状態で保ち続けるためのノウハウの提供を目的としている*5。 IAMへの興味の導線は以下のような具合。

  • クラウドが当たり前*6
  • セキュリティについての考え方が少し変わる*7
  • AWSのセキュリティの半分はIAMにかかっている

AWSのサービスそのものは本当に追いつくことが不可能なスピードで変化しているけども、セキュリティの基本的な部分*8が急激に変わることはなさそう。 AWSの入り口として、AWSを安全に使えるようにするのは必須要件になりそうなので、これからAWS触ろうとする人はちゃんとIAM本読みましょう(IAMマニアの称号ももらえるし!!)

booth.pm

*1:AWSの料金体系は、マシン特性や稼働時間によって変わってくるが、プログラミングはじめたてでインフラの知識が少ない状況でこれを読んでもちんぷんかんぷんなのである。https://d1.awsstatic.com/whitepapers/ja_JP/aws_pricing_overview.pdf

*2:これについては、なにも個人利用だけで起こるものではない。普通に企業もやらかしている(ググればいろいろ出てくる)

*3:ただ、AWSはじめましての人向けの超親切ハンズオン形式というわけでもないので、楽天ブックス: Amazon Web Services パターン別構築・運用ガイド 改訂第2版 - NRIネットコム株式会社 - 9784797392579 : 本との併用がよいかも

*4:気になる人はBOOTHでIAM本買いましょう【ダウンロード版】AWSの薄い本 IAMのマニアックな話 - 佐々木拓郎のオンライン本屋 - BOOTH

*5:個人的には、IAM本の立ち位置は「IAMの重要性についての啓蒙」といった見方です。

*6:ちょっと古いが、2017年時点で、サーバー目的のクラウド利用が50%弱である。総務省|平成30年版 情報通信白書|企業におけるクラウドサービスの利用動向

*7:AWSにおいて、ユーザの責任範囲はOSレイヤーよりも上なので、世にいうセキュリティの範疇(たとえば暗号化やファイアウォール)をユーザ側がほとんど包括することにはなる。ただ、不正利用による運用コスト増といったリスク視点が加わったので、”少し変わる”という表現をした

*8:ここでいうセキュリティの基本的な部分は、ユーザ・グループの権限管理等を想定してる。