AWSのセキュリティ|責任共有モデルの考え方と対策のポイントを解説

AWS セキュリティ

AWSなどのクラウドサービスでは、ユーザー側とクラウド事業者側で責任範囲が分かれるため、利用するサービスに応じて適切なセキュリティ対策が必要です。本記事では、AWSのセキュリティについて、ユーザー側が押さえておくべきポイントを解説します。

AWSのセキュリティにおける「責任共有モデル」とは?

AWSのセキュリティにおける「責任共有モデル」とは、セキュリティ対策の責任範囲を、顧客(ユーザー)とAWS(クラウド事業者)で分担する考え方です。AWS限定のものではなく、クラウドサービス全般で広く採用されています。

「管理主体が責任をもつ」という原則のもと、コンポーネント(構成要素)ごとにセキュリティの責任を分担します。

クラウドサービスにおける責任分界点について

責任共有モデルにおいて、責任分担の境目を「責任分界点」といいます。

従来、自社でサーバやネットワーク機器を保有するオンプレミス環境では、顧客である企業が設置・運用・管理などの責任を担っていました。しかし、クラウドサービスの普及に伴い、その一部がクラウド事業者側に移行し、セキュリティ責任を分担する構図が一般的となっています。

クラウドサービスの責任分界点

出典:クラウドサービスにおける責任分界点のイメージ

責任分界点はサービスの種類(SaaS、PaaS、IaaSなど)によって異なるため、利用するサービスに応じて確認が必要です。例えばSaaSだと、データやアクセス管理は顧客、インフラやアプリケーション管理はクラウド事業者が責任を負うといった具合に分担されます。

AWSの場合

AWSは「Amazon Web Services」の略で、Amazon社が提供する200以上のクラウドサービス群の総称です。AWSにおける責任共有モデルでは、責任範囲は以下のように分担されています。

AWS責任共有モデル

出典:責任共有モデル

AWS側の責任

AWS側は主に、クラウドサービスを支えるインフラやハードウェアのセキュリティに責任を負います。具体的には、以下のような領域が対象です。

  • 物理的なデータセンターの運用・管理
  • ハードウェア(サーバ、ストレージ、ネットワーク機器など)の提供・運用
  • AWSのグローバルインフラを構成するネットワーク基盤の管理

AWS側は、上記の領域において高度なセキュリティ対策を講じており、第三者機関による客観的な評価・監査も受けています。

ユーザー側の責任

ユーザー側は、どのAWSサービスを利用するかによって、セキュリティの責任範囲が変わります。主な管理対象は以下の通りです。

  • ネットワークの設定
  • インスタンスしたアプリケーションの管理
  • クラウド内のデータ管理、暗号化
  • IDやアクセス権限の管理
  • ゲストOSの更新やファイアウォール構成など(IaaSの場合)

上記の領域では、AWSの各種セキュリティサービスを適切に活用し、自社のポリシーに沿ったセキュリティ対策を講じることが求められます。

AWSのセキュリティレベルを確認する方法

AWSのクラウドサービスを利用する際は、AWS側がどの程度のセキュリティレベルを担保しているのかを事前に把握しておくことが重要です。ここでは、AWSのセキュリティ詳細を確認する方法を2つ紹介します。

AWS コンプライアンスプログラム

AWSが実装しているセキュリティ詳細については、AWSの「コンプライアンスプログラム」のページで確認可能です。このページでは、AWSが取得しているセキュリティ関連の認証や、各種コンプライアンス基準への準拠状況などが公開されています。

同ページを見ると、ISO27001やSOC、PCI DSSなど、国際的に認知されたさまざまなセキュリティ基準の認証を取得していることがわかります。

AWSホワイトペーパー

AWSのセキュリティに関する基本方針については、ホワイトペーパー「セキュリティとコンプライアンス」を確認しましょう。AWSの各種セキュリティ機能や運用プラクティスについて、包括的に説明されています。

AWSが責任共有モデルについて、どのような方針を取っているのかが簡潔に記されているので、自社のセキュリティポリシーへの適合性を確認するときに役立ちます。

AWSを導入する際に使用できるセキュリティサービス

ユーザー側が担うべきセキュリティ対策は多々ありますが、AWSではそれらに役立つセキュリティサービスを多数提供しています。ここからは、ユーザー側の管理領域をカバーし、AWSの安全性を高めるのに役立つ主要なセキュリティサービスを紹介します。

認証サービス

認証サービスとは、IDやアクセス権限について認証を行い、セキュリティ性を高めるサービスです。AWSでは、以下に紹介する認証サービスを組み合わせることで、強固なユーザー認証とアクセス制御を実現できます。

AWS IAM Identity Center(旧・AWS SSO)

AWS IAM Identity Center(旧称:AWS Single Sign-On)は、AWSが提供するシングルサインオン(SSO)サービスです。シングルサインオンとは、一度の認証手続きで複数のシステムやアプリケーションへアクセスを可能にする仕組みを指します。

AWS IAM Identity Centerを使うと、ひとつのユーザーアカウントで、複数のAWSアカウントやアプリケーションに対してシングルサインオンが可能になります。各AWSアカウントに対して、次項で解説するIAMユーザーを個別に作成する必要がなくなるため、ユーザー管理の手間を大幅に削減可能です。

AWS IAM Identity Centerは無料で利用できるため、複数のAWSアカウントを運用している場合は、積極的に導入を検討してみましょう。

出典:AWS公式サイト| AWS IAM アイデンティティセンター

AWS Identity & Access Management(IAM)

AWS Identity and Access Management(IAM)は、AWSリソースへのアクセスを安全に制御するための無料サービスです。IAMを使うと、ユーザーやグループ、ロールを作成し、それぞれに対して必要最小限のアクセス権限を割り当てられます。

IAMには、きめ細やかなアクセス制御を実現するためのさまざまな機能が用意されています。例えば、IAMポリシーを使ってAWSリソースごとに詳細なアクセス許可ルールを定義したり、特定の条件を満たす場合のみアクセスを許可したりすることが可能です。

出典:AWS公式サイト| AWS Identity and Access Management

データ保護サービス

クラウド上で機密データを扱う際は、適切な暗号化とアクセス制御が重要なポイントになります。ここでは、AWSが提供するデータ保護サービスの中から2つピックアップして紹介します。

AWS Key Management Service(KMS)

AWS Key Management Service(KMS)は、AWSのサービスやアプリケーションで使用される暗号化キーを一元管理できるサービスです。

KMSを利用すると、自動的にキーの更新が行われるため、定期的なキー変更の手間が省けます。また、キーを使えるユーザーの管理や使用履歴の調査、バックアップや無効化・削除なども可能です。

KMSの料金は、カスタマーマスターキーの使用量や、APIコールの無料利用枠(20,000リクエスト/月)の超過分に基づき、従量制で課金されます。

出典:AWS公式サイト| AWS Key Management Service

Amazon Macie

Amazon Macieは、機械学習を活用してS3バケット(AWSのストレージサービス)内の機密データを検出・保護するためのサービスです。クレジットカードの番号やメールアドレス、APIキーなどの機密情報を自動的にスキャンし、検出されたデータについてリスクレベルに応じた警告を発します。S3バケットごとのパブリック公開状況や、セキュリティ設定の問題点なども分析し、改善のためのアクションを提示することも可能です。

Macieの料金は、分析対象となるS3バケットのデータ量に応じて課金されます。30日間の無料トライアル期間(上限150GB)で、どの程度のコストが想定されるか表示されるので、そこから実際の利用料を予測可能です。また、Amazon S3 Storage Lensという機能で自社のデータ量などを調査し、AWS Pricing Calculatorという見積もりツールでおおよそのコストを算出する方法もあります。

出典:AWS公式サイト| Amazon Macie

サイバー攻撃対策サービス

クラウドを狙ったサイバー攻撃の脅威が高まる中、AWSではサイバー攻撃対策に役立つ多様なサービスが提供されています。攻撃の検知や防御を自動化し、運用負荷を下げつつ、セキュリティレベルの向上を狙えるサービスを紹介します。

Amazon GuardDuty

Amazon GuardDutyは、AWS環境をモニタリングして不審なアクティビティを検知するサービスです。AWS CloudTrailのイベントログやVPCフローログ、DNSログなどを分析することで、アカウント乗っ取りやデータ窃取、マルウェアを早期に察知します。

料金は、各データソースの分析ボリュームに基づいて決まります。30日間の無料トライアルを使えば、実際の稼働状況を参照し、1日の平均コストを調べることが可能です。

出典:AWS公式サイト| Amazon GuardDuty

Amazon Inspector

Amazon Inspectorは、脆弱性や悪意あるアクセスが可能なネットワークの露出を自動検出するサービスです。定期的なスキャンを行うことで、既知の脆弱性検出や対処の優先順位付けを実行します。AWS独自のセキュリティベストプラクティスや、CIS(Center for Internet Security)ベンチマークなどの業界標準に則り、適切な対処をサポートしてくれます。

料金は、スキャン対象の作業量に応じて課金される仕組みで、Amazon Inspectorを初めて使用する場合は15日間の無料トライアルが利用可能です。

出典:AWS公式サイト| Amazon Inspector

AWS WAF (Web Application Firewall)

AWS WAFは、Webアプリケーションを対象とした柔軟性の高いファイアウォールサービスです。ユーザーの定義に基づき、Webリクエストの許可やブロック、監視を行います。

アプリケーション層で動作し、通信を解析して特定条件に合致する場合に遮断することで、脆弱性を突いた攻撃や不正Botのアクセスを防ぎます。

IPアドレスやHTTPヘッダー、URI文字列などをもとに詳細なアクセス制御ルールを定義したり、GEO-IP機能を使って特定の国からのアクセスをブロックしたりすることも可能です。

料金は、設定したルールの数と、ルールにマッチしたWebリクエストの数に応じて発生します。

出典:AWS公式サイト| AWS WAF

AWS Shield

AWS Shieldは、DDoS(分散型サービス妨害)攻撃からWebアプリケーションを保護するためのマネージドサービスです。ネットワーク層とトランスポート層のDDoS攻撃に対して、常時監視と自動防御を行います。StandardプランとAdvancedプランの2種類があり、それぞれセキュリティレベルが異なります。

Standardプランは無料で利用できるプランで、SYNフラッドやUDPリフレクション攻撃などの代表的な攻撃手法に対する防御が可能です。

一方、Advancedプランはより高度な防御機能を備え、大規模攻撃への耐性強化やリアルタイム通知などが備わっています。また、ビジネスサポートプランまたはエンタープライズサポートプランに加入していれば、AWSのDDoS対応専門チームによる24時間365日の監視とサポートが提供されます。コストは月額費用3,000USD~に加え、データ転送量に応じた使用料金が必要です。

出典:AWS公式サイト| AWS Shield

監視・監査サービス

クラウド環境の適切な運用には、リソースの稼働状況やセキュリティイベントを常に監視・監査する体制が欠かせません。最後に、環境全体を俯瞰的に可視化するためのサービスを紹介します。

Amazon CloudWatch

Amazon CloudWatchは、AWSリソースやアプリケーションをモニタリングするサービスです。EC2インスタンスやRDSデータベースなどのメトリクス(指標)をリアルタイムに収集・可視化します。また、メトリクスが閾値を超えた際のアラート通知や、任意アクションの実行なども可能です。

CloudWatchの基本的な監視機能(5分間隔のメトリクス取得など)は、無料で利用できます。より詳細なモニタリング(1分間隔のメトリクス取得など)を行う場合は、対象のAWSリソース数に応じた追加料金が発生します。

出典:AWS公式サイト| Amazon CloudWatch

AWS CloudTrail

AWS CloudTrailは、AWS環境で行われた全てのAPI呼び出しとユーザーアクティビティを記録するサービスです。マネジメントコンソールでの操作、SDKやCLIから実行されたアクションなども漏れなくログに残せます。

記録されたCloudTrailログを分析することで、不正なリソース設定変更の検知や、トラブル発生時の原因究明などに役立ちます。AWS CloudWatch Logsと連携させることで、ログの長期的な保管と監査の効率化も可能です。

CloudTrailの料金は、記録したログのデータ量や分析したイベント数に基づいて請求されます。ただし、新規のユーザーについては、30日間の無料トライアルを利用できます。

出典:AWS公式サイト| AWS CloudTrail

まとめ

AWSを安全に利用するためには、責任範囲を正しく理解し、AWSが提供するセキュリティサービスを適切に活用することが重要です。ただし、実際のセキュリティ対策においては、サービスの選定・設計や運用について専門的なノウハウも求められます。

「FLEXY(フレキシー)」では、フリーランスエンジニア向けの案件を多数取り扱っています。AWS基盤の運用・保守業務案件も取り扱っており、AWSに知見のある方なら活躍が期待できます。興味がある方は、ぜひチェックしてみてください。

FLEXYサービスを見る

LINEでフリーランスの案件情報や最新Tipsを受け取る

FLEXYとはABOUT FLEXY

『FLEXY』はエンジニア・デザイナー・CTO・技術顧問を中心に
週1~5日のさまざまな案件を紹介するサービスです