皆様、セキュリティ対策してますか?
セキュリティを強化すると利便性が落ちる、利便性を高めるとセキュリティが弱くなる、
エンジニアにとっては永遠のテーマですよね。
AWSは様々なセキュリティサービスを提供しており、うまく組み合わせることによって、悩みが解決できるかもしれません。
この記事では、主要なセキュリティサービスについて解説していきます。
サービス一覧
サービス名 | 概要 | イメージ(独断) |
IAM | アクセス管理 | 役場 |
Guard Duty | 脅威検出 | モニタリング室 |
Inspector | 脆弱性管理 | 監査官 |
AWS WAF | WAF | SP |
Macie | 個人情報検出 | 保安官 |
Detective | 原因の調査・分析 | 安楽椅子探偵 |
Security Hub | 一元管理 | 敏腕秘書 |
Shield | DDoS防御 | ガードマン |
KMS | キー管理 | マンション管理人 |
Secrets Manager | パスワードなどの管理 | 銀行 |
AWS Identity and Access Management (IAM)
概要
通称「IAM(アイアム)」。
AWSリソースへのアクセス管理を行うAWSの基本中の基本のサービス。
ユーザ管理だけでなく、アクセス管理に関連するさまざまなサービスが提供されています。
使用タイミング
- ユーザーやグループ、ロールの作成・管理をしたいとき
- AWSリソースへのアクセス権限を細かく制御したいとき
前提条件
- AWSアカウントの作成
メリット
- きめ細かなアクセス制御が可能
- 一時的な認証情報の発行が可能
デメリット
- 複雑な権限設定は、ユーザ数が増えるに従い管理が難しくなる可能性がある
ユースケース
- 開発者に必要最小限の権限を付与
- 一時的なアクセス権限の付与
Amazon GuardDuty
概要
AIと機械学習を用いて脅威検出をしてくれるサービス
使用タイミング
- 継続的な監視が必要な場合
- 異常な動作や悪意のある動作を検出したいとき
前提条件
AWSアカウントの作成
メリット
- 自動で脅威を検出し、アラートで知らせてくれる
- 既存の環境に影響を与えずに導入が可能
デメリット
- 誤検知の可能性がある
- 費用が高くなる可能性がある
ユースケース
- 不正アクセスの検出
- データ漏洩の早期発見
Amazon Inspector
概要
自動で脆弱性を管理してくれるサービス
使用タイミング
- EC2インスタンスやコンテナイメージの脆弱性スキャン
- コンプライアンス要件を満たす必要がある場合
前提条件
- EC2インスタンスまたはコンテナイメージ
- AWS Systems ManagerエージェントのEC2インスタンスへのインストール
メリット
- 自動で脆弱性を検出し、重要度に応じて分類してくれる
- パッチ適用の優先順位付けが簡単にできる
デメリット
- スキャン対象がEC2とコンテナイメージのみと、限定的(2024年現在)
- 誤検知の可能性がある
ユースケース
- 定期的な脆弱性スキャン
- コンプライアンス監査
AWS WAF (Web Application Firewall)
概要
Webアプリケーションを保護するファイアウォールサービス。文字通りWAF。
使用タイミング
- Webアプリケーションを提供しており、そのアプリケーションにおいて、不正アクセスやSQLインジェクションなどの攻撃を防ぎたい場合
前提条件
- CloudFront、Application Load Balancer、API Gatewayなどのサービス利用が必須
メリット
- カスタマイズ可能なセキュリティルール
- リアルタイムで攻撃を防御してくれる
デメリット
- 複雑なルール設定には専門知識が必要
- 誤検知により正常なトラフィックがブロックされる可能性あり
ユースケース
- ECサイトの保護
- APIの不正利用防止
Amazon Macie
概要
機械学習を用いた個人識別情報の自動検出・分類
使用タイミング
- S3バケット内の機密データを特定・分類したいとき
- データプライバシーとセキュリティのコンプライアンスの確保
前提条件
- S3バケットの利用
メリット
- 自動で個人識別情報を検出し、リスクを評価
デメリット
- 大量のデータを処理する場合、コストが高くなる
- 一部の言語や特殊なデータ形式では精度が低下する可能性がある
ユースケース
- コンプライアンス報告書の作成
- データ漏洩リスクの評価
Amazon Detective
概要
セキュリティ関連の検出結果や疑わしい動作の根本原因を分析、調査、特定
使用タイミング
- セキュリティインシデントの詳細な調査
- 複数のデータソースからの情報を統合して分析
前提条件
- GuardDuty、CloudTrail、VPCフローログの有効化
メリット
- 自動でデータを収集し、グラフモデルに変換して分析してくれる
- 複雑な調査プロセスを簡単に
デメリット
- 費用が高くなる可能性がある
ユースケース
- 不正アクセスの詳細な調査
- セキュリティインシデントの根本原因分析
AWS Security Hub
概要
セキュリティアラートを集約し、セキュリティ状態を一元管理
使用タイミング
- 複数のセキュリティサービスからの検出結果を一元管理したい場合
- セキュリティ状態の包括的な可視化が必要なとき
前提条件
- 統合するセキュリティサービス(GuardDuty、Inspectorなど)の有効化
メリット
- 複数のセキュリティサービスからの検出結果を統合
- セキュリティ状態を包括的に可視化
デメリット
- 設定が複雑になりやすい
- 誤検知の可能性がある
ユースケース
- 複数アカウントにまたがったセキュリティ管理
- コンプライアンス状況の継続的なモニタリング
AWS Shield
概要
DDoS攻撃からAWSリソースを保護
使用タイミング
- DDoS攻撃対策が必要なとき
前提条件
- 保護対象のAWSリソース(ELB、CloudFront、Route 53など)を使用している
メリット
- 自動的なDDoS攻撃の検出と緩和
デメリット
- 高度な保護には追加コストが必要になる(Shield Advanced)
ユースケース
- ウェブアプリケーションのDDoS保護
- ゲーム関連のサーバー保護
AWS Key Management Service (KMS)
概要
暗号化キーの作成と管理
使用タイミング
- データの暗号化が必要なとき
- 暗号化キーの一元管理が必要なとき
前提条件
- AWSアカウントの作成
メリット
- 暗号化キーを安全に管理してくれる
- AWSの他のサービスと統合が可能
デメリット
- 複雑なキー管理ポリシーの設定が必要な場合がある
ユースケース
- S3バケット内のデータの暗号化
- RDSデータベースの暗号化
AWS Secrets Manager
概要
パスワードやAPIキーなどの機密情報を安全に管理
使用タイミング
- アプリケーションの認証情報を安全に管理
- 定期的な認証情報のローテーション
前提条件
- AWSアカウントの作成
メリット
- 機密情報をまとめて管理
- 自動的に認証情報をローテーション
デメリット
- 個別のシークレット管理に比べると、コストが高くなる可能性がある
ユースケース
- データベース認証情報の管理
- APIキーの安全な保存と利用
まとめ
セキュリティ管理は永遠のテーマですよね。
AWSは次から次へと便利なサービスが追加されていきますので、ユースケースに合わせて使っていきましょう。この記事が少しでもサービス選定に役立ったのなら幸いです。