🍒
[AWS][IAM]セキュリティ関連
はじめに
まずawsは高セキュリティが特徴!🛡️ただし『AWSサービスが高セキュリティであること』と、『AWSサービス上で構築・運用するウェブサービスやシステムが高セキュリティであること』とは、イコールではない😒
ってことでそこを勉強していく〜〜〜
AWSの責任共有モデル
AWSの責任共有モデルとは、クラウドサービス提供者であるAWSと顧客との間で、セキュリティとコンプライアンスに関する責任を分担する考え方です。
- 顧客は自身のデータとアプリケーションのセキュリティに責任を持ち、
-
AWSは物理的なインフラストラクチャのセキュリティを担当する。
AWS側のセキュリティ(概要)
- セキュリティを担保するための設計がある
- 継続的なモニタリング・テストの実施
- 高度な自動化
AWSでは、ほとんどのセキュリティツールが専用に構築され、AWS独特の環境やスケール要件に合わせてカスタマイズされています。 - 高い可用性
AWSのデータセンターは、複数の地理的リージョンや各リージョン内の複数のアベイラビリティーゾーンに構築されています。これによりシステムが継続して稼働するための最大限の弾力性を確保しています。 - 高い信頼性
特定のセキュリティ管理が目的どおりに実施・運用されているかどうか、監査人によって検証されています。
顧客側のセキュリティ(概要)
ウェブアプリケーションをAWS上で運用する場合、以下の2点に関してセキュリティ対策を行う必要があります。
- AWSのサービスや機能を利用する際のセキュリティ対策
例えば、IAMの設定(アクセス管理をするための機能) とかセキュリティグループの設定とか、データの暗号化とか監視設定してアラートつけるとか!!🦄 - Webアプリケーション側で行うセキュリティ対策
強力なパスワードポリシーを設定し、多要素認証(MFA)を導入したりアクセス制御(バリデーションとか) したり定期的にバックアップをとるとか🐣
具体的サービス❶「IAM」🐒
IAMグループを作成する
- IAMコンソールを開き、ナビゲーションメニューの[ユーザーグループ]を選択する
- [グループを作成]をクリックする
- 「グループ名」を入力する
※グループ名は、アカウント内で「一意」にします。
大文字と小文字は区別されません。たとえば、「ADMINS」と「admins」の名は同じグループとみなされ、両方作成はできません。
- グループに適用したいポリシーを選択する。(例:AmazonEC2ReadOnlyAccess)
ポリシーは、デフォルトで用意されているもの以外に、独自に作ることも可能。 - [グループを作成]をクリックする
IAMユーザーを作成する
続けて、このグループに所属するIAMユーザーを作成します。
- IAMコンソールを開き、ナビゲーションペインの[ユーザー]を選択する
- [ユーザーを追加]をクリックする
完了!!!!
具体的サービス❷「MFAデバイス」🐹
一般的には、2段階認証や多要素認証などの名で呼ばれています。
MFAはGoogleなどでも使われるがAWSマネジメントコンソールのログインでも、MFAを設定できます。
AWSマネジメントコンソールのMFAでは、「AWSアカウントに対して有効にする」、「アカウント内に作成したIAMユーザーに対して有効にする」などの設定が可能です。
MFAを設定してみる(任意)
rootユーザーに対して、Google認証システム(Authy 2段階認証)を利用する例
例の流れ
- [ダッシュボード]を選択
- [MFAを追加]を選択
- [MFAデバイスの割り当て]を選択する
- MFAデバイスを選択する
※今回の例ではiPhoneやAndroidで利用できるアプリを使ってMFA認証を行います。
a. 「デバイス名」に任意の文字列を入力する(例では、自身のiPhoneのGoogleAuthenticatorアプリを使う想定で入力しています)
b.「MFAデバイスを選択」は「認証アプリケーション」を選択する - 認証アプリケーションを設定する
- [QRコードを表示] を選択し、表示されたQRコードを認証アプリケーションで読み込む
- 認証アプリケーションに表示されるワンタイムパスワードを2回分入力する
- MFAを追加]を選択する
END
具体的サービス❸「CloudTrail」🦊
イベント履歴を確認する
- CloudTrailコンソールを開き、ナビゲーションペインの[イベント履歴]を選択する
デフォルトで90日間の管理イベントが記録される。
料金について
証跡の作成にはイベントログをS3に保存するため、S3の料金が発生します。
証跡を作成
- CloudTrailコンソールを開き、ナビゲーションペインの[証跡]をクリックして[証跡の作成]を選択
- [証跡名]を入力します。入力規則に従い、任意の名前を入力します。
- ストレージの場所の[新しいS3バケットを作成します]にチェックを入れます。
- [証跡ログバケットおよびフォルダ]に任意のバケット名を入力します。
- データイベントの[アカウントのすべてのS3バケットの選択]にチェックを入れる
- [ログファイルのSSE KMS暗号化]のチェックを外します。
- [次へ]をクリック
- 入力事項の確認をして[証跡の作成]をクリック
- 証跡が作成されると、作成した証跡が表示されています。
証跡を確認する
証跡を確認するには、作成した証跡に対するログが保存されているS3を確認します。
セキュリティ問題っていつかは直面する問題だから、またまとめ直す機会があるんだろうなぁ〜
とりあえず今日は概要だけ🦉
Discussion