AWS Cloud Roadshow 2017 ⼤阪 これで安⼼! セ …•AWS サービスを使...
Transcript of AWS Cloud Roadshow 2017 ⼤阪 これで安⼼! セ …•AWS サービスを使...
1© 2017 Amazon Web Services, Inc. or its affiliates. All rights reserved.
これで安⼼!セキュリティとネットワーク
〜 Getting Started with AWS Security and Networking 〜
Amazon Web Services Japanテクニカルトレーナー
⼤村 幸敬
AWS Cloud Roadshow 2017 ⼤阪
2© 2017 Amazon Web Services, Inc. or its affiliates. All rights reserved.
本セッションの概要
AWS におけるクラウドセキュリティ確保の考え⽅を解説します
ØAWSセキュリティの全体像ØネットワークセキュリティØAWS APIの認証と認可
3© 2017 Amazon Web Services, Inc. or its affiliates. All rights reserved.
AWSセキュリティの全体像
4© 2017 Amazon Web Services, Inc. or its affiliates. All rights reserved.
セキュリティの重要性
Ø セキュリティは、以下からミッションクリティカルな情報を保護するための中⼼的な機能要件である• 盗⽤• 漏洩• 改ざん
Ø お客様は、以下の責任を負う• データの機密性、完全性、および可⽤性の保護• 特定の情報保護要件への適合
完全性
5© 2017 Amazon Web Services, Inc. or its affiliates. All rights reserved.
クラウドのセキュリティとは?
Ø クラウドセキュリティはオンプレミスのデータセンターにおけるセキュリティと似ているが、物理的なサーバまたはストレージ機器を管理する必要がない
Ø ソフトウェアベースのセキュリティツールを使⽤して、クラウドリソースを出⼊りする情報の流れを監視および保護する
6© 2017 Amazon Web Services, Inc. or its affiliates. All rights reserved.
責任共有モデル – AWSAW
S
クライアント側のデータ暗号化とデータの整合性認証
サーバー側の暗号化(ファイルシステムおよびデータ)
ネットワークトラフィックの保護(暗号化/整合性/アイデンティティ)
プラットフォーム、アプリケーション、アイデンティティとアクセスの管理
オペレーティングシステム、ネットワーク、ファイアウォール設定
お客様のデータお
客様
基盤サービスコンピューティング ストレージ データベース ネットワーク
AWS グローバルインフラストラクチャ リージョン
アベイラビリティーゾーンエッジロケーション
7© 2017 Amazon Web Services, Inc. or its affiliates. All rights reserved.
AWS のセキュリティ責任共有モデル
Ø責任共有モデル (Shared Responsibility Model)
• クラウドサービスプロバイダー (AWS) が実装および運⽤するセキュリティ対策 -「Security OF the Cloud」
• AWS サービスを使⽤するお客様のコンテンツとアプリケーションのセキュリティに関連する、お客様が実装および運⽤するセキュリティ対策 -「Security IN the Cloud」
8© 2017 Amazon Web Services, Inc. or its affiliates. All rights reserved.
認証と認定
ISO 9001、ISO 27001、ISO 27017、ISO 27018、IRAP (オーストラリア)、MLPS Level 3 (中国)、MTCS Tier 3 Certification (シンガポール) など
9© 2017 Amazon Web Services, Inc. or its affiliates. All rights reserved.
各種サービスの責任共有モデルによる区分
Ø セキュリティとコンプライアンスを考慮して、AWS ではインフラストラクチャおよびプラットフォームサービスを以下の 3 つのカテゴリにグループ分けしている• インフラストラクチャサービス• コンテナサービス• アブストラクテッドサービス
データに関する統制権はいずれのサービスにおいてもお客様にあります
10© 2017 Amazon Web Services, Inc. or its affiliates. All rights reserved.
AWSサービスのセキュリティ上の責任の分担3つの主要なカテゴリ
カテゴリAWSの責任範囲
お客さまの責任範囲
NW的位置 アクセス方式
具体例
インフラストラクチャサービス
グローバルインフラ、仮想マシンとその稼働環境
ネットワーク制御OSレイヤ以上アプリケーションお客さまデータ等
VPCサブネット内
SSH/RDP等 EC2、EBS、VPC等
コンテナサービス
上記に加え、EC2上に構成されるマネージドサービス
ネットワーク制御お客さまデータ等
VPCサブネット内
各サービス固有のプロトコル(JDBC等)
RDS、ElastiCache等
抽象化サービス
AWSが独⾃に提供するマネージドサービス
サービスアクセス制御お客さまデータ等
インターネット
AWS API S3、DynamoDB等
※詳細はホワイトペーパー「AWSセキュリティのベストプラクティス」を参照
11© 2017 Amazon Web Services, Inc. or its affiliates. All rights reserved.
AWS利⽤におけるセキュリティ確保の全体像
CLI / SDK
キーペアによるOS認証
セキュリティグループによるインスタンスの通信保護
リモートデスクトップ
ターミナル
アクセスキーIDシークレットキーによるAPIの認証
マネジメントコンソール
IAMユーザIDPassword
によるMCの認証
AWS API
マネ
ジメ
ント
コン
ソー
ル(M
C)
VPCによるネットワークの通信保護
HTTPS
HTTPS
SSH/RDP
MySQL
IAM
EC2
S3
DynamoDB
IAMによるAPIの認可
12© 2017 Amazon Web Services, Inc. or its affiliates. All rights reserved.
VPCによるネットワークセキュリティ
13© 2017 Amazon Web Services, Inc. or its affiliates. All rights reserved.
Amazon Virtual Private Cloud (VPC)
AWS クラウドの隔離されたプライベート仮想ネットワークをプロビジョニングする仮想ネットワーク環境を完全に制御できる
AmazonVPC
14© 2017 Amazon Web Services, Inc. or its affiliates. All rights reserved.
Amazon VPC の例
アベイラビリティーゾーン A
Virtual Private Cloud
AWS クラウド
パブリックサブネット
インターネット
Virtual Private Cloud
アベイラビリティーゾーン B
プライベートサブネット
アベイラビリティーゾーン C
VPN のみのサブネット
DB サーバー DB サーバー
アプリケーションサーバー
DB サーバー DB サーバー
DB サーバー
ウェブサーバー ウェブサーバー
NAT
顧客ネットワーク
R
15© 2017 Amazon Web Services, Inc. or its affiliates. All rights reserved.
VPC とサブネットサブネットは VPC 内の IP アドレスの範囲を定義する選択したサブネット内で AWS リソースを起動できるØ 各サブネットは 1 つのアベイラビリティーゾーン内に完全に収
まっている必要があるため、複数のゾーンにまたがるサブネットを作成することはできない
プライベートサブネットはインターネット経由でアクセスできないリソースに使⽤するパブリックサブネットはインターネット経由でアクセスできるリソースに使⽤するØ パブリックかプライベートかはインターネットへの
ルーティングがあるかないかで決まる
16© 2017 Amazon Web Services, Inc. or its affiliates. All rights reserved.
セキュリティグループによるアクセス制御
HTTP
SSH/RDP
インターネットに開放しているポートは 80 および 443 のみ
エンジニアスタッフは踏み台ホストに対する SSH/RDP アクセスが可能
他のすべてのインターネットポートはデフォルトではブロック
踏み台
17© 2017 Amazon Web Services, Inc. or its affiliates. All rights reserved.
ネットワークACLとセキュリティグループ
ネットワーACLはサブネットへのトラフィックを制御セキュリティグループはインスタンスへのトラフィックを制御
サブネット10.0.0.0/24
サブネット10.0.1.0/24
インターネットゲートウェイVPN ゲートウェイ
VPC ルーター10.0.0.0/16
セキュリティグループ セキュリティグループ
セキュリティグループ
ネットワーク ACL ネットワーク ACL
ルーティングテーブル ルーティングテーブル
インスタンス
インスタンス
インスタンス
インスタンス
18© 2017 Amazon Web Services, Inc. or its affiliates. All rights reserved.
他のネットワークとの接続
VPN 接続オプション 説明AWS ハードウェア VPN VPC とリモートネットワーク間に IPsec ハードウェア
VPN 接続を作成できるソフトウェア VPN ソフトウェア VPN アプライアンスが実⾏されてい
る VPC の Amazon EC2 インスタンスを使⽤して、リモートネットワークへの VPN 接続を確⽴できる
AWS Direct Connect AWS Direct Connect は、リモートネットワークからVPC に専⽤のプライベート接続を提供する
VPCピアリング 同⼀リージョンの他のVPCとピア接続する
19© 2017 Amazon Web Services, Inc. or its affiliates. All rights reserved.
確認:EC2とRDSとS3はどこにいる?
アベイラビリティーゾーン A
Virtual Private Cloud
AWS クラウド
パブリックサブネット
インターネット
Virtual Private Cloud
アベイラビリティーゾーン B
プライベートサブネット
アベイラビリティーゾーン C
VPN のみのサブネット
DB サーバー DB サーバー
アプリケーションサーバー
DB サーバー DB サーバー
DB サーバー
ウェブサーバー ウェブサーバー
NAT
顧客ネットワーク
R
S3
20© 2017 Amazon Web Services, Inc. or its affiliates. All rights reserved.
AWS利⽤におけるセキュリティ確保の全体像
CLI / SDK
キーペアによるOS認証
セキュリティグループによるインスタンスの通信保護
リモートデスクトップ
ターミナル
アクセスキーIDシークレットキーによるAPIの認証
マネジメントコンソール
IAMユーザIDPassword
によるMCの認証
AWS API
マネ
ジメ
ント
コン
ソー
ル(M
C)
VPCによるネットワークの通信保護
HTTPS
HTTPS
SSH/RDP
MySQL
IAM
EC2
S3
DynamoDB
IAMによるAPIの認可
21© 2017 Amazon Web Services, Inc. or its affiliates. All rights reserved.
IAMによるAWS APIの認証と認可
22© 2017 Amazon Web Services, Inc. or its affiliates. All rights reserved.
AWS Identity and Access Management (IAM)
AWS IAM
3
フェデレーティッドユーザーと権限の管理
2
AWS IAM ロールと権限の管理
1
AWS IAM ユーザーとアクセスの管理
23© 2017 Amazon Web Services, Inc. or its affiliates. All rights reserved.
AWS IAM 認証
認証AWS マネジメントコンソールØ ユーザー名とパスワード IAM ユーザー
24© 2017 Amazon Web Services, Inc. or its affiliates. All rights reserved.
AWS IAM 認証
アクセスキー ID: AKIAIOSFODNN7EXAMPLEシークレットアクセスキー: wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY
Java Python .NET
AWS SDK およびAPI
AWS CLI
認証AWS CLI または SDK APIØ アクセスキーとシークレットキー IAM ユーザー
25© 2017 Amazon Web Services, Inc. or its affiliates. All rights reserved.
AWS IAM ユーザーの管理 – グループ
ユーザー D
DevOps グループ
ユーザー C
AWS アカウント
TestDev グループ
ユーザー Bユーザー A
26© 2017 Amazon Web Services, Inc. or its affiliates. All rights reserved.
AWS IAM 認可
認可IAM ポリシー:Ø 権限を記述している JSON
ドキュメントØ ユーザー、グループ、
ロールに割り当てられるIAM ユーザー IAM グループ
IAM ロール
27© 2017 Amazon Web Services, Inc. or its affiliates. All rights reserved.
AWS IAM ポリシー{
"Version": "2012-10-17","Statement": [{"Sid": "Stmt1453690971587","Action": ["ec2:Describe*","ec2:StartInstances","ec2:StopInstances”],"Effect": "Allow","Resource": "*","Condition": {"IpAddress": {
"aws:SourceIp": "54.64.34.65/32”}
}},{
"Sid": "Stmt1453690998327","Action": ["s3:GetObject*”],"Effect": "Allow","Resource": "arn:aws:s3:::example_bucket¥*”
}]
}
IAM ポリシー
28© 2017 Amazon Web Services, Inc. or its affiliates. All rights reserved.
AWS IAM ポリシーを割り当てる
IAM ユーザーIAM グループ
割り当てる 割り当てる
IAM ポリシー
29© 2017 Amazon Web Services, Inc. or its affiliates. All rights reserved.
AWS IAM ポリシーを割り当てる
IAM ユーザーIAM グループ
IAM ロール
割り当てる 割り当てる
割り
当て
る
IAM ポリシー
30© 2017 Amazon Web Services, Inc. or its affiliates. All rights reserved.
AWS IAM ロール
IAM ロールにポリシーを適⽤するIAM ロールに直接関連付けられる認証情報はないIAM ユーザー、アプリケーション、およびサービスがIAM ロールを引き受けられる
IAM ロール
31© 2017 Amazon Web Services, Inc. or its affiliates. All rights reserved.
AWS IAM ポリシーを割り当てる
IAM ユーザーIAM グループ
IAM ロール
割り当てる 割り当てる
割り
当て
る
IAM ポリシー
IAM ユーザー
引き受ける 引き受ける
AWS リソース
32© 2017 Amazon Web Services, Inc. or its affiliates. All rights reserved.
アプリケーションの AWS リソースへのアクセス
Amazon EC2 インスタンスでホストされているPython アプリケーションでは Amazon S3 とやり取りする必要があるAWS 認証情報には以下が必要であるØ オプション 1: Amazon EC2 インスタンスに
AWS 認証情報を保存するØ オプション 2: AWS のサービスおよびアプリ
ケーションに AWS 認証情報を安全に配布する
IAM ロール
33© 2017 Amazon Web Services, Inc. or its affiliates. All rights reserved.
AWS IAM ロール – インスタンスプロファイル
Amazon EC2
アプリケーション &EC2 MetaData Service
http://169.254.169.254/latest/meta-data/iam/security-credentials/rolename
Amazon S3
1
2
3
4
インスタンスの作成
IAM
ロー
ルの
選択
S3 とや
り取
りす
るア
プリ
ケー
ショ
ン
34© 2017 Amazon Web Services, Inc. or its affiliates. All rights reserved.
AWS IAM ロール – ロールを引き受ける
IAM 制限ポリシー
IAM ユーザーA-1
AWS アカウント AIAM Admin
RoleIAM 管理者ポリシー
割り当てる
引き受ける
割り当てる
1
2
IAM ユーザーB-1
AWS アカウント B
Amazon S3
引き受ける
4
アクセス
53
アクセス
1
35© 2017 Amazon Web Services, Inc. or its affiliates. All rights reserved.
⼀時的セキュリティ認証情報 (AWS STS)
セッションアクセスキー ID
シークレットアクセスキー
セッショントークン
有効期限
⼀時的セキュリティ認証情報
15 分〜36 時間
ユースケースクロスアカウントアクセスフェデレーション
モバイルユーザーAmazon EC2 ベースのアプリケーションのキー更新
36© 2017 Amazon Web Services, Inc. or its affiliates. All rights reserved.
アプリケーション認証
AWS IAM アプリケーション
サポートされていない サポートされていない
OS
37© 2017 Amazon Web Services, Inc. or its affiliates. All rights reserved.
AWS IAM フェデレーション
IAM フェデレーションは以下に対するフェデレーションアクセスを⾏うために使⽤できるØ AWS マネジメントコンソールØ AWS API
サポートされているアイデンティティ:Ø AWS Directory ServiceØ Microsoft Active DirectoryØ Amazon Cognito、Login with Amazon
などの OpenID Connect (OIDC)Ø SAML 2.0
AWS Directory Service
Amazon Cognito
38© 2017 Amazon Web Services, Inc. or its affiliates. All rights reserved.
モバイルアプリケーションの Amazon Cognito フェデレーション
AWS アカウント
AWS リージョン
Cognito
DynamoDB
AWS STS
ユーザー
アイデンティティプロバイダー(Login with Amazon)
モバイルクライアント
1
2
3
4
5
アプリケーションのアクセス
認証をリダイレクトし ID トークンを受け取る
Cognito トークンを ID トークンと交換する
Cognito トークンを⼀時的な AWS 認証情
報と交換する
⼀時的な認証情報を使⽤してAWS のサービスにアクセスする
39© 2017 Amazon Web Services, Inc. or its affiliates. All rights reserved.
AWS IAM 認証と認可
認証Ø AWS マネジメントコンソール
• ユーザー名とパスワードØ AWS CLI または SDK API
• アクセスキーとシークレットキー
認可Ø ポリシー
IAM ユーザー IAM グループ
IAM ロール
40© 2017 Amazon Web Services, Inc. or its affiliates. All rights reserved.
AWS IAM のベストプラクティス
AWS アカウントの (ルート) アクセスキーの削除個々の IAM ユーザーの作成グループを使⽤して IAM ユーザーに権限を割り当てる最⼩権限を付与強⼒なパスワードポリシーを設定する権限のあるユーザーに対して MFA を有効にする
41© 2017 Amazon Web Services, Inc. or its affiliates. All rights reserved.
AWS IAM のベストプラクティス (続き)
Amazon EC2 インスタンスで実⾏されるアプリケーションに対して IAM ロールを使⽤する認証情報を共有するのではなく、ロールを使⽤して委任する定期的に認証情報を更新する不要なユーザーと認証情報を削除する追加のセキュリティのために条件(Condition)を使⽤するAWS アカウントのアクティビティをモニタリングする
42© 2017 Amazon Web Services, Inc. or its affiliates. All rights reserved.
AWS CloudTrail
アカウントに対する AWS API コールを記録する情報を含むログファイルを Amazon S3 バケットに配信するAWS マネジメントコンソール、AWS SDK、AWS CLI、および AWS の上位サービスを使⽤して呼び出しを⾏う
AWS CloudTrail Amazon S3 バケット
ログ
43© 2017 Amazon Web Services, Inc. or its affiliates. All rights reserved.
AWS利⽤におけるセキュリティ確保の全体像
CLI / SDK
キーペアによるOS認証
セキュリティグループによるインスタンスの通信保護
リモートデスクトップ
ターミナル
アクセスキーIDシークレットキーによるAPIの認証
マネジメントコンソール
IAMユーザIDPassword
によるMCの認証
AWS API
マネ
ジメ
ント
コン
ソー
ル(M
C)
VPCによるネットワークの通信保護
HTTPS
HTTPS
SSH/RDP
MySQL
IAM
EC2
S3
DynamoDB
IAMによるAPIの認可
44© 2017 Amazon Web Services, Inc. or its affiliates. All rights reserved.
まとめ
AWS におけるクラウドセキュリティ確保の考え⽅を解説しました
ØAWSセキュリティの全体像ØネットワークセキュリティØAWS APIの認証と認可