Slide 1

Slide 1 text

AWSマルチアカウント環境における AWS CloudTrailの管理戦略 AWS事業本部コンサルティング部 あしさん 1

Slide 2

Slide 2 text

2 自己紹介 あしさん / 芦沢 広昭 (ASHIZAWA Hiroaki) ❖ 所属 AWS事業本部 コンサルティング部 / ソリューションアーキテクト ❖ 担当業務 AWS設計構築・コンサルティング ★ 好きなAWSサービス AWS Control Tower、Amazon Security Lake

Slide 3

Slide 3 text

3 ちょっとだけ宣伝 Hibiya.Techという技術コミュニティを運営しています! ● 東京@日比谷オフィスでオフライン定期開催 ● 聞くだけじゃなく QA・議論が盛り上がって楽しいLT会 ● 次回は5/24開催 (connpassで検索してね!)

Slide 4

Slide 4 text

4 本日のテーマは「環境分離戦略」ということで... よっしゃ!環境分離した! 運用しやすいなぁ〜!セキュアだなぁ〜!OK!

Slide 5

Slide 5 text

5 よっしゃ!環境分離した! 運用しやすいなぁ〜!セキュアだなぁ〜!OK! とはならないですよね

Slide 6

Slide 6 text

6 私たちが求めること 全体の統制をかけつつ 運用上必要な権限を保ちつつ セキュアに環境分離したい

Slide 7

Slide 7 text

7 今回のセッションでは 「AWS CloudTrail」にフォーカスして以下の知見を紹介します 全体統制を掛けつつ ● どのように統制をかけるのか? ○ (前半パートでお話しします) 運用上必要な権限を保ちつつ ● 運用しやすいの管理構成は? ○ (後半パートでお話しします) セキュアに環境分離する

Slide 8

Slide 8 text

8 アジェンダ 1. AWS CloudTrailとは ○ サービスの概要 2. CloudTrail管理について ○ CloudTrailの管理とは ○ 3つの代表的な手法 3. CloudTrail管理戦略 ○ CloudTrail設計パターンの紹介

Slide 9

Slide 9 text

9 本日のゴール ● CloudTrailの機能・仕様について詳しくなる(8割) ● CloudTrail管理・運用のノウハウが身につく(2割)

Slide 10

Slide 10 text

10 CloudTrailとは?

Slide 11

Slide 11 text

11 AWS CloudTrailとは? AWSアカウント内のAPIアクティビティを イベントログとして記録・保存できるサービス → AWSの業務監査・リスク監査の実現、ガバナンスの基本となるサービス

Slide 12

Slide 12 text

12 AWSのAPIアクティビティって? 参考リンク:AWS BLACK BELT ONLINE SEMINAR - AWS CloudTrail

Slide 13

Slide 13 text

13 だいたいこの認識でOK CloudTrail ≒ AWSアカウントの操作ログ

Slide 14

Slide 14 text

14 CloudTrailのサービス概要 ● AWSアカウント作成の時点で すべてのリージョンで無料で利用できるサービス。 ● 無料利用の範囲で AWSマネジメントコンソールから 直近90日間の管理イベントを検索できる。 ● 以下の要件がある場合は、別途設定が必要。 ○ ログの長期間保存 (90日以上) ○ 外部ストレージ(S3など)へのログ出力 ○ 管理イベント以外のログ出力

Slide 15

Slide 15 text

15 イベント履歴の利用 設定なしで、AWSマネジメントコンソールの 「CloudTrail > イベント履歴」のページから 過去90日間の管理イベントが確認・検索できます。

Slide 16

Slide 16 text

16 CloudTrailイベントの一覧 管理イベント データイベント インサイトイベント 概要 AWSアカウント内の リソースに対して実行 される管理操作のログ リソース上または リソース内で 実行されたAPI操作 CloudTrail Insightsで 取得されたAPIの 異常アクティビティ 利用料金 (証跡) イベント例 IAMロールのアタッチ (IAM:AttachRolePolicy) VPCの作成 (EC2:CreateSubnet) 証跡1つまで無料、 証跡2つ目以降は S3に配信されたイベント 100,000 あたり 2.0 USD S3バケットのオブジェクトに 対するAPI操作 (S3:GetObject/S3:DeleteO bject/S3:PutObject) 通常1分間に10回記録され る S3:DeleteBucket が 1分間に100回記録された S3に配信されたイベント 100,000 あたり 0.10 USD インサイトタイプ毎に 分析されたイベント 100,000 件あたり 0.35 USD

Slide 17

Slide 17 text

17 CloudTrail管理とは?

Slide 18

Slide 18 text

18 CloudTrail管理とは? CloudTrailの設定をどのように統一するか?

Slide 19

Slide 19 text

19 CloudTrail管理の手段 CloudTrailの管理手段は大きく分けて3パターン ● 証跡の利用 ● AWS CloudTrail Lakeの利用 ● Amazon Security Lakeの利用 → これらの差異として、以下の観点に着目 ・何が ログを配信するか? ・どこに ログを保管するか? ・どのように ログが配信されるか? ・💰 利用料金

Slide 20

Slide 20 text

20 ● 証跡の利用 ● AWS CloudTrail Lakeの利用 ● Amazon Security Lakeの利用

Slide 21

Slide 21 text

21 証跡の利用 証跡を設定することで 任意のS3バケットにログを配信できる → 証跡がイベントをキャプチャし、ログをS3バケットに配信する仕組み 証跡にはリージョンの概念がある(デフォルトはリージョン横断)

Slide 22

Slide 22 text

22 証跡の設定 S3に配信するログの種類は証跡で設定する ● 管理イベント、データイベント、インサイトイベント

Slide 23

Slide 23 text

23 組織の証跡 組織単位で証跡を有効化すると 証跡を一括設定できます ※AWS Organizationsの利用が前提です 参考リンク:【Organizations】組織レベルで CloudTrailの証跡を有効化、S3バケットへ集約する

Slide 24

Slide 24 text

24 2つの意味を持つ「証跡」 マルチリージョン証跡の場合 ● ホームリージョンの証跡 ○ 証跡の設定管理 ○ ログを配信するリソース ● その他のリージョンの証跡 ○ ログを配信するリソース 組織の証跡の場合 ● 管理アカウントの証跡 ○ 証跡の設定管理 ○ ログを配信するリソース ● メンバーアカウントの証跡 ○ ログを配信するリソース

Slide 25

Slide 25 text

25 証跡の料金 証跡1つ(AWSアカウント内の1つのリージョン)毎に以下の料金が発生 ● 管理イベント ○ 1つ目の証跡:無料 ○ 2つ目以降の証跡:S3に配信されたイベント(※)100,000 あたり 2.0 USD ● データイベント ○ S3に配信されたイベント(※)100,000 あたり 0.10 USD ● インサイトイベント ○ インサイトタイプ毎に分析されたイベント 100,000 件あたり 0.35 USD ※配信先のS3バケットの保存料金は別途必要 参考:AWS CloudTrail の料金 ※S3に配信されたイベント数に対して課金されるため、S3に配信されなかったイベントは課金対象外

Slide 26

Slide 26 text

26 証跡の4点まとめ ● 何が? ○ 各アカウント・各リージョン毎に作成された証跡が ● どこに? ○ 指定された任意のS3バケットに ● どのように? ○ イベントをキャプチャし、ログを配信する ● 料金 ○ 1つ目の証跡 (管理) :無料 🆓 ○ 2つ目以降の証跡 (管理) と証跡 (データ / インサイト) :有料 💰

Slide 27

Slide 27 text

27 ● 証跡の利用 ● AWS CloudTrail Lakeの利用 ● Amazon Security Lakeの利用

Slide 28

Slide 28 text

28 AWS CloudTrail Lakeとは? 以下の機能が利用できます。 ● イベントデータストアを利用したログ集約 ● ダッシュボード ● SQLライクなクエリエディタ 参考リンク:[アップデート] CloudTrailログ分析環境が超絶簡単に手に入る! 「CloudTrail Lake」がリリースされました

Slide 29

Slide 29 text

29 イベントデータストアによるログ集約 マルチリージョン・マルチアカウントのログを自動収集できる → どのイベントを取得するのかイベントデータストアで選択 収集される側のアカウントにリソース(証跡など)は作成されない

Slide 30

Slide 30 text

30 ダッシュボード 数クリックで利用できるダッシュボードが利用可能に 期間を指定してクエリを実行するだけで利用できる 参考リンク:[アップデート] AWS CloudTrail Lake にダッシュボード機能が追加されました

Slide 31

Slide 31 text

31 SQLライクなクエリエディタ Athenaに似たSQLライクなクエリエディタが利用できる そのまま使える用途別のサンプルクエリ(説明付き)が便利

Slide 32

Slide 32 text

32 CloudTrail Lakeの料金 ● 2パターンの料金オプション ○ 1年間の延長可能な保持料金 (One-year extendable retention pricing) ■ データ取り込み:管理、データイベント:0.75 USD / GB から ■ データ保持  :無料 (取り込みコストに含まれる) ■ データクエリ :スキャンされたデータ 0.005 USD/GB ○ 7年間の保持料金 (Seven-year retention pricing) ■ データ取り込み:管理、データイベント:2.5 USD / GB から ■ データ保持  :無料 (取り込みコストに含まれる) ■ データクエリ :スキャンされたデータ 0.005 USD/GB 参考:AWS CloudTrail の料金 ※イベントデータストアが配置されているアカウントにのみ料金が発生します

Slide 33

Slide 33 text

33 CloudTrail Lakeの4点まとめ ● 何が? ○ イベントデータストア自身が ● どこに? ○ イベントデータストアに ● どのように? ○ 直接ログを配信する ● 料金 ○ 1年間保持料金:有料 💰 (比較的安価) ○ 7年間保持料金:有料 💰💰💰 (少し高め)

Slide 34

Slide 34 text

34 ● 証跡の利用 ● AWS CloudTrail Lakeの利用 ● Amazon Security Lakeの利用

Slide 35

Slide 35 text

35 Amazon Security Lakeとは? AWSマネージドに管理されたセキュリティログ専用のデータレイク(S3バケッ ト) が利用できるようになるサービス → AWSネイティブログの収集、収集対象アカウント・リージョンの指定、外部クエリアクセス管理など 柔軟なカスタマイズが可能 参考リンク:セキュリティデータ管理 - Amazon Security Lake - AWS

Slide 36

Slide 36 text

36 AWSネイティブログの収集 2024年5月時点で以下のログの自動収集 ※ & 正規化 が可能 ● CloudTrailイベント (管理、データ) ※ ● Security Hub Findings (検出結果) ● Route 53 DNS クエリログ ● VPCフローログ ● EKS監査ログ ※CloudTrailイベントを除き、サービス側での明示的なロギング設定は不要  CloudTrailイベントを収集するためにマルチリージョン証跡の作成が前提となる (収集の仕組みは証跡と同じ)

Slide 37

Slide 37 text

37 ログ収集対象の指定 ログを収集する対象のアカウント・リージョンを指定できる 保存先のS3バケットは取得するリージョンに応じて自動で作成

Slide 38

Slide 38 text

38 外部クエリアクセス管理 サブスクライバー設定 (+α)によって、 S3バケットへのクロスアカウントアクセスを許可できる 参考リンク:Amazon Security LakeのサブスクライバーにSumo Logicを設定してみた 参考リンク:Amazon Security Lake のサブスクライバー機能を使っ て他のアカウントから Athena で検索する

Slide 39

Slide 39 text

39 Security Lakeの料金 ● データ取り込み ○ CloudTrailログ:0.75USD / GB ○ その他のログ ■ 10TBまで :0.38USD / GB ■ 〜30TBまで:0.228USD / GB ■ 〜50TBまで:0.114USD / GB ■ 50TB〜  :0.076USD / GB ● データの正規化 ○ 0.035USD / GB ● データ保持 ○ ※ S3 Standardの料金 (0.025USD/GB) が適用 参考:Amazon Security Lake の料金

Slide 40

Slide 40 text

40 Security Lakeの4点まとめ ● 何が? ○ 各アカウント・各リージョン毎に作成された証跡が ● どこに? ○ Security Lakeが管理するデータレイク(S3)に ● どのように? ○ イベントをキャプチャし、ログを配信する ● 料金 ○ データ取り込み + 正規化 + データ保持(S3 Standard)

Slide 41

Slide 41 text

41 各管理方法の比較 証跡 CloudTrail Lake Security Lake 保存先 任意のS3バケット イベントデータストア Security Lake管理の S3バケット 利用料金 対象のイベント 管理イベント データイベント インサイトイベント 証跡(1つ目):無料 証跡(2つ目〜): 2.0 USD / 100,000イベント + S3保存料金 0.75 USD / GB 〜 (取り込み + データ保持) 0.75USD / GB (取り込み) + 0.035USD / GB (正規化) + S3保存料金 管理イベント データイベント インサイトイベント 管理イベント データイベント

Slide 42

Slide 42 text

42 ここまで話したこと 全体統制を掛けつつ ● ログ取得設定の一括設定 ■ 組織証跡、CloudTrail Lake(組織)、Security Lake(組織) ● ログの集約 ■ 任意のS3、イベントデータストア、Security Lake管理のS3 運用上必要な権限を持ちつつ ● (後半パートでお話しします) セキュアに環境分離する

Slide 43

Slide 43 text

43 CloudTrailの管理戦略

Slide 44

Slide 44 text

44 CloudTrail管理戦略(造語)とは? CloudTrailを どのように統制するか? + どのように運用するか?

Slide 45

Slide 45 text

45 ログの運用といっても、さまざまあるけど... ● 取得 ● 分析 ● 可視化 ● 監視 → 「取得 (閲覧) + 分析」にフォーカスして考えてみましょう :みんながログを確認できるようにするという一番基本の話

Slide 46

Slide 46 text

● 組織証跡で証跡を一括設定 ● ログはアカウントB (管理アカウント) のS3バケットに集約 ● 管理イベントのみを記録 46 ベースとなるアーキテクチャ

Slide 47

Slide 47 text

● コストが低い (無料の証跡 + S3保存料金) ● 運用負荷が低い (組織証跡のみ) ● 管理アカウントですべてのログを検索できる (監査対応) 47 ベースとなるアーキテクチャ(メリット)

Slide 48

Slide 48 text

● メンバーアカウントが過去のログにアクセスできない ○ 都度、ログの払い出しなどの対応が必要になる 48 ベースとなるアーキテクチャ(デメリット) Athena

Slide 49

Slide 49 text

● 対策案①:S3へのアクセス権限の修正 49 過去ログへのアクセス対策 ・S3バケットポリシーの修正 ・Lake Formationの利用

Slide 50

Slide 50 text

● 対策案②:個別証跡 + S3レプリケーション ○ 組織証跡は使わない ○ 各アカウントの証跡で取得したS3ログを 管理アカウントのS3にレプリケーションする 50 過去ログへのアクセス対策 参考リンク:CloudTrail証跡をS3レプリケーションで集約管理してみた

Slide 51

Slide 51 text

対策案③:個別証跡 + CloudTrail Lake ● 組織証跡は使わない ● CloudTrail Lakeで管理アカウントに集約 ○ コストは管理アカウントのみに発生 ● メンバーアカウントは個別の証跡でログを確認 ○ コストは無料枠の範囲 51 過去ログへのアクセス対策

Slide 52

Slide 52 text

対策案④:Amazon Security Lake ● Security LakeでセキュアなCloudTrailロギング環境 をマネージドに構築 ○ コストはちょっとお高め ● メンバーアカウントからのログアクセスは サブスクライバー設定で対応 52 過去ログへのアクセス対策

Slide 53

Slide 53 text

53 その他話したかったこと ● 管理イベント以外を取得したい場合 ○ 組織全体で取得する場合 ○ 個別のアカウントでだけ取得する場合 ○ その他... → 後日、ブログでフォローします!!!!!!

Slide 54

Slide 54 text

54 まとめ 全体統制を掛けつつ ● ログ取得設定の一括設定 ○ 組織証跡、CloudTrail Lake(組織)、Security Lake(組織) ● ログの集約 ○ 任意のS3、イベントデータストア、Security Lake管理のS3 運用上必要な権限を持ちつつ ● 必要なログ閲覧権限を付与したい ○ 要望に合わせた構成を検討しよう セキュアに環境分離する

Slide 55

Slide 55 text

55