본문 바로가기

Ops/AWS

AWS IAM Policy - user MFA force

반응형

AWS IAM Policy - user MFA force

 

 

 

 

■ 설명

첫 로그인 시 mfa를 강제로 적용하도록 설정하는 policy

 

 

■ 코드

{
    "Statement": [
        {
            "Action": [
                "iam:ChangePassword"
            ],
            "Effect": "Allow",
            "Resource": [
                "arn:aws:iam::*:user/${aws:username}"
            ],
            "Sid": "AllowChangePassword"
        },
        {
            "Action": [
                "iam:GetAccountPasswordPolicy"
            ],
            "Effect": "Allow",
            "Resource": "*",
            "Sid": "AllowGetAccountPasswordPolicy"
        },
        {
            "Action": [
                "iam:GetAccountPasswordPolicy",
                "iam:GetAccountSummary",
                "iam:ListVirtualMFADevices"
            ],
            "Effect": "Allow",
            "Resource": "*",
            "Sid": "AllowViewAccountInfo"
        },
        {
            "Action": [
                "iam:ChangePassword",
                "iam:GetUser"
            ],
            "Effect": "Allow",
            "Resource": "arn:aws:iam::*:user/${aws:username}",
            "Sid": "AllowManageOwnPasswords"
        },
        {
            "Action": [
                "iam:CreateAccessKey",
                "iam:DeleteAccessKey",
                "iam:ListAccessKeys",
                "iam:UpdateAccessKey"
            ],
            "Effect": "Allow",
            "Resource": "arn:aws:iam::*:user/${aws:username}",
            "Sid": "AllowManageOwnAccessKeys"
        },
        {
            "Action": [
                "iam:DeleteSigningCertificate",
                "iam:ListSigningCertificates",
                "iam:UpdateSigningCertificate",
                "iam:UploadSigningCertificate"
            ],
            "Effect": "Allow",
            "Resource": "arn:aws:iam::*:user/${aws:username}",
            "Sid": "AllowManageOwnSigningCertificates"
        },
        {
            "Action": [
                "iam:DeleteSSHPublicKey",
                "iam:GetSSHPublicKey",
                "iam:ListSSHPublicKeys",
                "iam:UpdateSSHPublicKey",
                "iam:UploadSSHPublicKey"
            ],
            "Effect": "Allow",
            "Resource": "arn:aws:iam::*:user/${aws:username}",
            "Sid": "AllowManageOwnSSHPublicKeys"
        },
        {
            "Action": [
                "iam:CreateServiceSpecificCredential",
                "iam:DeleteServiceSpecificCredential",
                "iam:ListServiceSpecificCredentials",
                "iam:ResetServiceSpecificCredential",
                "iam:UpdateServiceSpecificCredential"
            ],
            "Effect": "Allow",
            "Resource": "arn:aws:iam::*:user/${aws:username}",
            "Sid": "AllowManageOwnGitCredentials"
        },
        {
            "Action": [
                "iam:CreateVirtualMFADevice"
            ],
            "Effect": "Allow",
            "Resource": "arn:aws:iam::*:mfa/*",
            "Sid": "AllowManageOwnVirtualMFADevice"
        },
        {
            "Action": [
                "iam:DeactivateMFADevice",
                "iam:EnableMFADevice",
                "iam:ListMFADevices",
                "iam:ResyncMFADevice"
            ],
            "Effect": "Allow",
            "Resource": "arn:aws:iam::*:user/${aws:username}",
            "Sid": "AllowManageOwnUserMFA"
        },
        {
            "Action": [
                "iam:ListUsers"
            ],
            "Effect": "Allow",
            "Resource": "arn:aws:iam::*:*",
            "Sid": "AllowListUsers"
        }
    ],
    "Version": "2012-10-17"
}

 

 

 


by mkdir-chandler


 

 

 

 

 

728x90
반응형

'Ops > AWS' 카테고리의 다른 글

AWS IAM Role - sts 신뢰 관계 편집  (0) 2023.09.15
AWS IAM Policy - sts assume role  (0) 2023.09.14
AWS IAM Policy - RDS Snapshot read  (0) 2023.09.12
AWS IAM Policy - RDS Snapshot create  (0) 2023.09.11
AWS IAM Policy - RDS Maintenance  (0) 2023.09.10