はじめに
これまでクラウドサービスにまったく触れたことはありませんでしたが、ひょんなことからAmazon Web Services(AWS)が提供するユーザセキュリティについて調べる機会がありました。
ここでいうユーザセキュリティとは、
AWSクラウド上に保管されているユーザの情報資産を第三者が窃取できないこと
を指します。
AWSのドキュメントを読み進める中で感じたのは、
- 個々の機能については理解できる
- 一方で情報量が非常に多く、全体像をつかみにくい
という点でした。
もちろん、AWSのドキュメントは「必要な情報がすべて網羅されている」ことを重視して書かれており、その点で非常に価値があります。一方、AWSサービスを利用する立場(ユーザの立場)から見ると、「まず何をおさえればよいか、どんな観点で整理すればよいか」の指標が必要だろうと感じました。そこで自分にとって必要な情報を整理しなおし、
- 全体像を把握する
- そのうえで各詳細に入っていく
ための足掛かりになるようなまとめ方を考えてみました。
整理のアイデア
ここでは、
自分がセキュリティ担当者だとして、AWSのサービス利用を検討している
という視点から情報を整理しなおすことを考えます。
ここでいう「ユーザ」はAWSを利用してサービスを構築・運用する側を指しており、(クラウド上で構築する)サービスのエンドユーザである「顧客」とは異なります。
整理のアイデアとして採用したのは、AWSのShared Responsibility Modelです。これは、
- AWSが責任を負う範囲
- ユーザが責任を負う範囲
を明確に区別する考え方です。
Shared Responsibility Modelに基づいて整理することで、サービス障害やセキュリティの問題が発生したときに責任の所在を明らかになり、誠実な顧客対応につながると考えました。
整理の方法
上記のアイデアを踏まえ、以下のように整理するとよいと考えました。
全体の概要
- AWSを用いることで達成できるユーザセキュリティとは何か
- ユーザセキュリティを達成するためにAWSが提供しているサービスは何か
- ユーザ自身はどこまで責任を持つ必要があるのか
ユーザ側の利用手順
- ユーザ側の責任範囲について、実際にどのような設定や運用が必要になるのか
AWSサービス内部でのセキュリティ実装
- 各サービスがどのような仕組みでセキュリティを体現しているか
サービス料金
- どの程度のコストが発生するか
まず「全体の概要」で責任分界と達成できるセキュリティレベルを把握し、そのうえで必要に応じて「AWS サービス内部でのセキュリティ実装」や「ユーザの利用手順」を確認していく、という流れを想定しています。
ドキュメントの例
ここまでの整理を踏まえ、実際には次のような内容が良いのではないかと思います。
全体の概要のドキュメント例
(私が調べた限りでは)、全体の概要に関するまとまった記事を見つけることができませんでした。
そこで、一例として私の方で書いてみました。ご参考ください。
-
認証・認可
- ルートユーザの認証
- IAMユーザを用いた権限制御
- [一時的なクレデンシャルによる認証(随時公開します)]
-
[Encryption At Rest(随時公開します)]
ユーザ側の利用手順のドキュメント例
ユーザ側の具体的な設定手順については、実際の AWS 利用者と思われる方々が、すでに多くの記事を書いてくださっています。
とても参考になるものが多いです。ここではいくつかの記事を紹介させていただきます。
AWSサービス内部でのセキュリティ実装のドキュメント例
(私が調べた限りでは)、全体の概要に関するまとまった記事を見つけることができませんでした。
現時点で私のほうでも調べていません。そこで、この簡単にどんなことをドキュメントに書いておくとよのか、私のイメージを箇条書きで(一部)列挙しておきます。
- 想定されている脅威、スコープ外の脅威
- 信頼の仮定(何を無条件で信頼するのか)
- 実際の実装方法とその実装の選択理由
など
サービス料金のドキュメント例
料金については、最終的には作成するサービス構成に大きく依存します。
とはいえ、各サービスのおおよその価格感を把握できる資料があると検討しやすいと思います。以下のような記事が良いと考えています。
おわりに
以上になります。
ご意見などありましたら、コメントいただけるとありがたいです。