Jayendra’s Blog
この記事は自己学習用に「AWS Certification – Security & Identity Services – Cheat Sheet(Jayendra’s Blogより)」を日本語に訳した記事です。
IAM
- AWS サービスおよびリソースへのアクセスを安全に制御します。
- ユーザー ID を作成および管理し、それらのユーザーが AWS リソースにアクセスするためのアクセス許可を付与できます。
- 同様の権限を持つ複数のユーザーのグループを作成できます。
- アプリケーション認証には適していません。
- グローバルであり、別のリージョンに移行する必要はありません。
- ポリシーの定義に役立ちます。
- json 形式
- デフォルトでは、すべてのアクセス許可が暗黙的に拒否
- 最も制限の厳しいポリシーを優先する
- IAM ロール
- 永続的な資格情報を作成することなく、ユーザーおよびサービスへのアクセスを許可および委任できます。
- IAM ユーザーまたは AWS サービスは、AWS API 呼び出しを行うために使用できる一時的なセキュリティ認証情報を取得する役割を引き受けることができます。
- ユーザーまたはサービスがアクセスできるものを定義するために、誰とアクセス許可ポリシーを定義するための信頼ポリシーが必要です。
- セキュリティトークンサービス (STS) と共に使用され、IAM ユーザーまたは認証されたフェデレーションユーザーに対して一時的で限定的な特権資格情報を提供する軽量 Web サービスです。
- IAM ロールシナリオ
- EC2 などのサービスアクセスによる S3 または DynamoDB へのアクセス
- ユーザーのクロスアカウントアクセス
- 同じアカウント内のユーザー
- AWS アカウント内のユーザーが同じ所有者を所有している場合
- セキュリティ強化のための外部 ID を持つサードパーティの AWS アカウントのユーザー
- ID プロバイダーとフェデレーション
- ユーザーが Amazon、Google、または AssumeRoleWithWebIdentity を使用する任意の OpenID IdP のような外部認証 ID プロバイダを使用して認証することができる WeB ID フェデレーション。
- SMAL 2.0 を使用した ID プロバイダで、ユーザをオンプレミス Active Directory で使用して認証することができ、AssumeRoleWithSAML を使用して LDAP または SMAL 2.0 準拠の IdP を開きます。
- 他の ID プロバイダーの場合は、ID ブローカーを使用して、assumerole (推奨) または getfederationtoken を使用して一時的な資格情報を認証および提供します。
- IAM のベストプラクティス
- 請求以外のものには root アカウントを使用しないでください
- 個々の IAM ユーザーを作成する
- グループを使用して IAM ユーザーにアクセス許可を割り当てる
- 最小特権の付与
- EC2 上のアプリケーションに IAM ロールを使用する
- 資格情報を共有する代わりにロールを使用して委任する
- 資格情報を定期的にローテーション
- ポリシー条件を使用した細分性の向上
- Cloudtrail を使用して活動履歴を保持する
- IAM ユーザーに強力な IAM パスワードポリシーを適用する
- 未使用のユーザーと資格情報をすべて削除する
CloudHSM
- AWS クラウドでハードウェアセキュリティモジュール (HSM) を使用できるようにすることで、セキュアな暗号化キーストレージをお客様に提供します。
- 単一のテナント、専用の物理デバイスを安全に生成、保存、およびデータ暗号化に使用される暗号化キーを管理します。
- VPC 内にある (EC2 クラシックではない) と、ネットワークの他の部分から隔離されています。
- VPC ピアを使用して、複数の VPC から CloudHSM に接続できます。
- Oracle の Amazon Redshift および Amazon RDS と統合されています。
- EBS ボリューム暗号化、S3 オブジェクトの暗号化とキー管理は CloudHSM で行うことができますが、カスタムアプリケーションスクリプトが必要です。
- フォールトトレラントではなく、すべてのキーが失われた場合と同様にクラスタを構築する必要があります。
- コストが高い場合は、AWS Key Management Service(KMS)を選択します。
AWS Directory Service
- AWS のアプリケーションに、Active Directory サービスへのアクセスを提供します。
- SMAL + AD とは異なり、一時的な資格情報を使用して AWS サービスにアクセスできます。
- SimpleAD
- 最も安価ですが、Microsoft ADのアドバンス機能はサポートしていません
- AWS で SAMBA 4 のマイクロソフト Active Directory 互換のスタンドアロンディレクトリサービスを提供します。
- 個別のコピーが維持されるため、認証または承認の単一のポイントはありません。
- 信頼関係は、Simple AD と他の Active Directory ドメインの間では設定できません。
- 集中認証サービスを通じてアクセスと制御を活用する必要がある場合は、使用しないでください。
- AD コネクタ
- AWS のインスタンスがオンプレミスの Active Directory に接続するためにホストされたプロキシサービスと同じように動作します。
- ユーザーがオンプレミスまたは AWS クラウドでリソースにアクセスしているかどうかにかかわらず、パスワードの有効期限、パスワードの履歴、アカウントのロックアウトなど、既存のセキュリティポリシーの一貫した適用を有効にします。
- VPN 接続 (またはダイレクトコネクト) が必要です。
- 既存の RADIUS ベースの MFA ソリューションと統合して、多要素認証を有効にします。
- 遅延につながる可能性のあるデータはキャッシュしません。
- 読み取り専用ドメインコントローラー (rodc)
- 読み取り専用のアクティブディレクトリとして動作します。
- Active Directory ドメインサービス (AD DS) データベースのコピーを保持し、認証要求に応答します。
- これらは、物理的なセキュリティを保証できない場所には書き込まれ、通常は配置されません。
- 認証と承認コントロールを1つのポイントに維持することができますが、同期する必要があります。
- 書き込み可能なドメインコントローラ
- セットアップが高価です。
- マルチマスターモデルで動作します。変更は、フォレスト内の任意の書き込み可能なサーバー上で行うことができ、それらの変更はフォレスト全体にわたってサーバーにレプリケートされます。
AWS WAF
- CloudFront に転送された HTTP/HTTPS リクエストを監視し、コンテンツへのアクセスを制御できるようにする Web アプリケーションファイアウォールです。
- ルールの組み合わせであるWeb ACLを定義するのに役立ちます。これは、ブロックする条件とアクションの組み合わせです。
- サードパーティ製 WAF
- XSS や SQL インジェクションなどの悪用をカバーするために Web トラフィックにルールのセットを適用するフィルタとして機能し、また、HTTP GET または POST flood を軽減することにより、DDoS に対する回復性を構築するのに役立ちます。
- WAF は、OWASP のトップ10のような多くの機能を提供しています, HTTP レート制限, ホワイトリストまたはブラックリスト, 検査し、異常なパターンとの要求を識別する, CAPTCHA など。
- WAF サンドイッチパターンは、インターネットと内部ロードバランサーの間に自動 WAF が置かれている場所に実装することができます。