本記事について
ビルダーの皆様、こんにちは。シニアセキュリティソリューションアーキテクトの桐山です。
皆様は、AWS 環境においてどのようにセキュリティを実現していますでしょうか ?
セキュリティ考える余裕が無い、セキュリティ実現したいけど方法が分からない、セキュリティやってみたけど運用が回らない、など多種多様なお悩みを私は今まで聞いたことがあります。
そのような皆様に向けて、今後数回にわたり、ビルダーとセキュリティを取り上げた連載をお届けしよう思います。
本記事は AWS Builders Online Series のセッション「ビルダーのビルダーによるビルダーのためのセキュリティ」の解説記事になります。セッション資料は以下をご参照ください。
builders.flash メールメンバー登録
そもそもビルダーって何 ?
AWS クラウドは、最新技術をコスト最適で素早く利用できるため、ビルダーが “実験 (Experiment)” できる場としても適しています。アイディアと実行力があれば資本の大きさに関わらず挑戦できる環境とも言えますね。

ビルダーのセキュリティ (Security of Builder)
この写真にあるくらい小さい子ども達は、皆ビルダーと言えます。何にも縛られずに自由に実験を繰り返します。
例えば、この積み木ブロック、何度も試行を重ねて、納得のいく素晴らしい設計、アーキテクチャを組もうとする、まさにビルダーですね。自由な発想をする可愛い子どものために、堅牢な建物に閉じ込め外に出さないとはしないはず。子どもに自由にすくすくと育つ環境でありつつ、安心・安全を提供する、そのような難しいチャレンジをしたいからこそ、セキュリティという技術は進化してきました。

ビルダーによるセキュリティ (Security by Builder)
どんな業界・規模の企業もセキュリティは意識しています。それに呼応するようにセキュリティ製品・サービスは巷に溢れています。それ自体は素晴らしいことです。一方で、セキュリティとはとかく状況に依存するものでもあります。皆さんが所属している会社毎に、業界が異なり、ビジネスモデルが異なり、事業の成長ステージが異なり、扱うアプリケーションやデータが異なるので、そのような状況に基づいたセキュリティ実装はその企業にしかできません。
- ビジネス要件に基づく IT 環境 (OS 、ミドルウェア、アプリケーションなど)
- ビジネスで扱う重要データの属性
- 企業内の他システムとの連携
状況の変化が激しい中、上記のような観点をセキュリティ実装に継続的に反映させるためには、皆さん自身がビルダーとなってセキュリティを作っていかなければなりません。
DevOps とセキュリティ
最近では、DevOps という言葉で、顧客との相互やりとりを素早く効率的に行う開発運用の在り方を表現することが多いと思います。この DevOps は、組織文化 (Culture)、手法 (Practices)、ツール (Tools) の 3 つの要素が全て揃うことで導入が現実になります。DevOps を実現する組織は、開発運用全体のライフサイクルに責任を持たなければなりません。そして、こちらの図にあるような開発運用におけるセキュリティも考慮しなければ、全体ライフサイクルの責任を全うできないでしょう。

セキュリティ自動化の重要性
セキュリティを作る上で、やるべきことは沢山ありそうです。そのために重要なことが、セキュリティの自動化です。特に、クラウドの利用が当たり前となった時代において、セキュリティ自動化は必要不可欠です。
クラウド環境の特長の 1 つとして、その拡張性が挙げられます。データ処理量の需要拡大に応じて、容易に、更に言えば自動的に、IT 資源が拡張します。常に安心・安全な環境を求めるのであれば、セキュリティも自動的に追従して拡大されなければなりません。AWS クラウドではセキュリティを標準機能として組み込むことができるため、自動的なセキュリティ拡張の実現が容易になります。
たとえば、Auto Scaling で自動拡張する Amazon EC2 仮想サーバーは、起動した瞬間から AWS Identity and Access Management (IAM) という認証認可機能や Amazon VPC というネットワークセキュリティ機能が標準で利用できます。

プラットフォームにおけるセキュリティ
そして、自動化は信頼性を向上させるという効果もあります。人間が手動で作業することで生まれやすい品質のバラつきは、ツールによる自動化で一定以上の品質が担保されます。また、AWS セキュリティの原理原則に “人をデータから切り離す (Keep the people away from the data)” というのがあります (参考 : AWS re:Invent 2017: AWS Security State of the Union)。重要データに人間がアクセスするのは事故の元という考え方です。重要データにアクセスするのはツールのみにし、ツールを開発・構成したり使用可能な状態にするのが人間の仕事であると言っています。
ビルダーのためのセキュリティ (Security for Builder)
従来、事業部門から見たセキュリティ部門は、“門番 (Gatekeeper)” のような存在だったかもしれません。サービス開始前のリリース判定会議でセキュリティレビューを実施、「項目 X 番のセキュリティルールに遵守していないので、やり直してください」などのやり取りが行われていると聞いたことがあります。実際、私がソフトウェア開発者だった時にこのようなことを体験しました。当時は、多くの工数を割いて対応していましたし、それが当たり前だとも思っていました。しかし、振り返ってみると、結果としてサービスリリースの時期が遅れ、ビジネスの機会損失につながるので、もっと良いやり方があったのかもしれません。
ガードレールとしてのセキュリティ
これまで来た道を止める存在であった門番から、ここから行く道を示す存在であるガードレールに、セキュリティの役割が変わりつつあると言えるでしょう。このようなパラダイムシフトが起きるのも、クラウドという新しい技術の台頭によるところが大きいかもしれません。なぜなら、クラウドの特長がガードレールの実現を容易にしたからです。

Infrastructure as Code とガードレール
このような環境になったことで、セキュリティも規範的 (prescriptive) にコード記述できるようになりました。まだ存在していないシステムのセキュリティを先にコード記述しておけますし、ワンクリックでシステムが構築されると同時にセキュリティ実装もなされます。結果としてガードレールの敷設が、いつでもどこにでもコスト最適でできるようになったのです。
ガードレールの一例として、AWS Innovation Sandbox ソリューションというものをご紹介します。 まさに、イノベーションを起こしたいビルダーが実験的な場として利用できるサンドボックス環境です。安心・安全な実験場を作る上で、AWS Organizations による AWS アカウント管理、AWS CloudTrail による監査用操作ログ取得、データ漏えいを防ぐため Amazon AppStream 2.0 によるブラウザベースアクセスなどが含まれています。AWS 環境において、開発しているアプリケーションの実証実験 (Proof of Concept: PoC) をしてみたい方は是非ご参照ください。
さいごに、こんなに上手くいくもの ?
「そんな簡単にはいかないのよ」という声が聞こえてきそうです。この記事ではまだ、前述の DevOps 要素である手法 (Practices) とツール (Tools) の例を述べただけで、組織文化 (Culture) に触れていないからかもしれません。
セキュリティはセキュリティ専門チームだけのものではありません。企業に属する全員がセキュリティ意識を持った文化を維持する必要があります。組織文化は企業毎に異なるので一般化はできないため、ここでは AWS ではどのようにやっているかを紹介しようと思います。
Security Guardian プログラム
組織横断で Security Guardian コミュニティが作られ、サービス開発チームと一緒に、自然にセキュリティ人材と能力が育成される仕組みになっています。このようなプログラムを AWS では実施し、セキュリティ文化を醸成するための一つの方法としています。

AWS セキュリティチームの Tenets
文化とは醸成された結果です。では、醸成するにあたって最初に何が無ければならないでしょうか ?
文化を醸成する元となるものを、AWS ではテネッツ (Tenets) と呼んでいます。英和辞書を引くと教義や信条という日本語訳が出てきます。右図は AWS セキュリティチームの Tenets です(参考:AWS re:Inforce 2021: Scaling security, one human at a time)。このような価値観を持って業務に取り組んだ結果としてセキュリティ文化が出来上がります。
そして最後に、図の右下書いてある (unless you know better ones...) という文言を説明します。直訳すると「これより良いものが無い限りは」という意味ですね。この Tenets も、今これが良いとして定義したものですが、もし環境が変わって、それに適したより良いものが見つかったら、更新することも厭わないという意思表示です。

まとめ
次回からは、ビルダーに向けたセキュリティ実装方法やワークショップのご紹介などをしていく予定です。ビルダー向けの AWS セキュリティサービスや新しい機能にも触れていくので、連載をお楽しみにしてください !
筆者プロフィール
桐山 隼人
アマゾン ウェブ サービス ジャパン合同会社
シニアセキュリティソリューションアーキテクト
学生時代は Fortran, C, C++ による構造解析シミュレーション、新卒入社した外資系 IT 企業開発研究所では、Embedded C++, Java などで組み込みシステムを開発していました。現在は、日本およびアジアパシフィックの AWS 利用者のビジネス課題、技術課題の解決を支援しています。子育て奮闘中です。
ビルダーの方がビジネスに集中できるセキュリティ環境をお届けすることが、私の テネット (Tenet) です。子どもたちが思いっきりリスクを取れるように安心・安全な環境を提供することもテネット (Tenet) です。

Did you find what you were looking for today?
Let us know so we can improve the quality of the content on our pages