[レポート] MGT313 ゴールドマン・サックスのエンタープライズ規模のガバナンス設計 #reinvent

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

はじめに

横田あかりです。AWS re:Invent2019にてセッション MGT313 「Architect governance at enterprise scale with Goldman Sachs」を聴講してきたのでレポートします。

セッションの概要は下記になります。

As AWS customers accelerate their AWS adoption, going from managing a few AWS accounts to supporting pilot applications to operating on an enterprise scale, they encounter common challenges to maintaining necessary governance. They face issues such as how to control budgets across accounts, workloads, and users; how to automate account provisioning and maintain good security; and how to automate compliance. In this session, we define cloud governance and provide best practices to achieve security, optimized costs, and compliance. Come learn how these best practices for managing your AWS environment have been applied in the real world by Goldman Sachs.

スピーカーは下記の三人です。

  • Raymond Ma - Senior Product Manager, AWS Identity, Amazon Web Services
  • Tate Wrage - Technology Analyst, Goldman Sachs
  • Ming Ng - Vice President - Cloud Architect, Goldman Sachs

レポート

  • アジェンダ
    • なぜマルチアカウント環境を利用するのか
    • スケーラブルなマルチアカウント環境のための7つのベストプラクティス
    • どのようにゴールドマン・サックスはAWS環境を管理しているのか

はじめに

AWSを用いたインフラの設計を始めるときには、まず始めにWell-architectedな環境を意識しましょう。その際に、マルチアカウントで設計することの重要性を伝えています。

なぜマルチアカウントで環境を用意するのか

  • 社内には多数のチームがある
  • リソースの完全な分離
  • セキュリティやコンプライアンスの制御
  • ビジネスプロセス
  • 支払い

スケーラブルなマルチアカウント環境のベストプラクティス

  • 環境のアーキテクチャー
  • アカウント作成とプロビジョニング
  • アクセスとパーミッション
  • 組織のデフォルト設定
  • セキュリティと改善
  • コンプライアンスとモニタリング
  • コスト最適化と洞察

7つのベストプラクティス

推奨されるマルチアカウントのフレームワーク

  • ひとつの設定を全ての要求を満たすことはできません。まずベースがあり、そこから必要に応じて部品を選びます。ここでは、Organizationsの基本設計がベースにあり、そこうえに、必要に応じてOU(Orgenizations Unit)の設定を追加しています。

アカウント作成とプロビジョニングのパイプライン

  • AWSアカウント作成に連動して、サービス利用制限の設定、CloudFormationを起動を自動化することができるようになります。これにより、標準的な設定を付加することができます。

アカウントにアクセスするユーザの一元化

  • Active Directoryなどのユーザ管理と連携したSSOの実現をします。

Organizationsのベースとなる設定

  • サービス利用制限ポリシーの設定
  • EBSの暗号化
  • S3バケットの非公開化

セキュリティと改善の一元化

  • GuardDutyの自動設定
  • セキュリティインシデント発生時のSNSへの通知
  • Lambdaを用いて誤った設定を自動的に修正

コンプライアンスとモニタリングの集約

  • CloudTrailの設定
  • CloudWatch Logsの検索
  • Configのルール作成

コスト最適化と洞察の一元化

  • コンソリデート
  • CURレポート
  • コストエクスプローラーの活用

ゴールドマン・サックスの場合

アカウント管理の一元化

  • 2つのOrganizationsがある。
  • デベロッパー向けのサンドボックスとなるアカウントが1000以上
  • アプリケーション向けのアカウントが200以上

新規アカウントの作成

-ユーザからのリクエストを受け取ったフロントシステムが、ユーザを管理するシステムの許可を得て、Organizationsでアカウント作成プロセスになります。

アカウントのブートストラップ

  • アカウント作成の手順において、Lambdaが呼ばれ、CloudTrailの設定や、Configの設定、情報漏えい検知の設定、GuardDutyの設定などをONにします。

IDとアクセス管理

  • 社内ポータルからたどるIDブローカーなどから、Active Directoryなどの一元化されたID管理システムにログインして、テンポラリークレデンシャルと指定されたロールを取得して、AWS管理コンソールにログインします。AD側でユーザのロールが指定されるため、部署異動や退職などの人事イベントによるロールの変更があったとしても、一元的に対応が可能となっています。

まとめ

  • AWSが提唱するWell-architectedな環境設定について、ゴールドマン・サックス社は全社の取り組みとして、それぞれベストプラクティスに沿った運用をしていました。

感想

全ての規模の企業がこのセッションで紹介されているような設定を徹底することは難しいと思います。当社では、メンバーズというサービスにおいて、Orgenizationsの基本的な設定や、MSPとしての標準プロセス、セキュリティ設定、支払いレポート作成などを通じて、全てのお客様がベストプラクティスにそって、安心安全なクラウド利用ができように支援を行っています。みなさんの会社で、7つのベストプラクティスに沿っているか、定期的に確認していただくのが良いと思いました。