アイデンティティ管理とアクセス管理
FSISEC1: AWS IAM ロールが最小権限の原則に準拠していることをどのように確認しますか? |
---|
FSISEC2: 管理者アカウントなどの昇格された資格情報の使用をどのように監視し、特権の昇格を防ぎますか? |
---|
最小権限の原則に基づいて機能的 IAM ロールを設計します。最小限のポリシーセットを持ち、適用可能なアクション、リソース、条件でスコープダウンされたロールを作成します。たとえば、組織内のすべてのデータサイエンティスト向けにロールを作成し、特定のバケット/キーへの読み取り専用アクセスを使用して AWS のデータ分析サービスのみにアクセスできるように制限することができます。
また、AWS IAM ロールを使用して AWS アカウント間でアクセスを委任することにより、1つの AWS アカウントのリソースを別の AWS アカウントのユーザーと共有することもできます。あるアカウントのユーザーが別のアカウントのリソースにアクセスできるようにするには、そのアカウントにアクセスできるユーザーと、そのアカウントに切り替えるユーザーに付与するアクセス許可を定義するロールを作成します。最小権限の原則に沿って、ロールのアクセス許可を、そのロールが機能を実行するために必要なものだけに制限できます。
IAM ポリシーの確認 IAM ポリシーは強力で精巧であるため、各ポリシーによって付与されるアクセス許可を調べて理解することが重要です。詳細については、IAM ポリシーの確認に関するヒントをお読みください。
サービスの最終アクセス時間データを使用してアクセス許可を確認
サービスの最終アクセス時間データを使用して、IAM ロールを定期的に確認します。IAM エンティティ (ユーザーまたはロール) が最後にサービスにアクセスを試みたときのレポートを表示できます。次に、その情報を使用してポリシーを調整し、使用中のサービスのみへのアクセスを許可することができます。IAM のリソースの種類ごとにレポートを生成できます。詳細については、サービスの最終アクセス時間データの表示プロセスのドキュメントをお読みください。
ロールの確認を実行し、未使用のロールを削除 IAM ロールを定期的に確認し、使用されていないロールを削除します。ロールを削除する前に、サービスの最終アクセス時間データレポートを表示して、最近のサービスレベルのアクティビティを確認してください。
特権昇格を緩和 特権昇格とは、悪意のある攻撃者がステルス権限を使用してアクセス許可のレベルを上げ、セキュリティを危険にさらすことです。特権昇格は、管理者以外またはフルアクセス以外のアクセス許可を多数悪用した結果として発生する可能性があります。たとえば、IAM:CreatePolicyVersion です。このアクセス許可により、管理者権限を持たないユーザーが、IAM:SetDefaultPolicyVersion アクセス許可にアクセスしなくても、新しいカスタム権限を作成して、それをポリシーのデフォルトバージョンとして設定することができてしまいます。このようなシナリオを回避するには、次のアクセス許可に注意してください。
-
IAM:AddUserToGroup
-
IAM:AttachRolePolicy
-
IAM:AttachUserPolicy
-
IAM:CreateAccessKey
-
IAM:CreateLoginProfile
-
IAM:CreatePolicyVersion
-
IAM:CreateRole
-
IAM:CreateUser
-
IAM:DeleteRole
-
IAM:DeleteRolePermissionsBoundary
-
IAM:DeleteRolePolicy
-
IAM:DeleteUserPermissionsBoundary
-
IAM:DeleteUserPolicy
-
IAM:DetachRolePolicy
-
IAM:PassRole
-
IAM:PutRolePermissionsBoundary
-
IAM:PutRolePolicy
-
IAM:PutUserPermissionsBoundary
-
IAM:SetDefaultPolicyVersion
-
IAM:UpdateAssumeRolePolicy
-
IAM:UpdateLoginProfile
-
IAM:UpdateLoginProfile IAM:CreatePolicyVersion
-
IAM:UpdateRole
-
IAM:UpdateRoleDescription
-
AWS STS:AssumeRole
特権の昇格を防ぐために、アカウント内のユーザー (IAM 管理者または委任された管理者を除く) が管理 IAM アクションを使用できないようにするには、サービスコントロールポリシー (SCP) を使用する必要があります。アクセス許可管理を信頼できる従業員に安全に委任する場合は、IAM アクセス許可境界機能を使用できます。IAM アクセス許可境界により、特権の昇格を防ぎながら、IAM アクセス許可管理を安全に委任できます。たとえば、デベロッパーは、IAM 管理者によって定義された特定のアクセス許可境界を超えることなく、AWS Lambda 関数と Amazon EC2 インスタンスの IAM ロールを安全に作成できます。実際のアクセス許可境界の例については、アクセス許可境界ラウンドのドキュメント