2014-12-03 11 views
6

Mam kilka kont administracyjnych dla moich programistów, którzy powinni mieć możliwość administrowania wszystkimi zasobami aws, ale nie powinni mieć możliwości zarządzania użytkownikami/właściwościami root. W ten sposób ograniczyłem dostęp do IAM, stosując następujące zasady:AWS Polityka IAM umożliwiająca użytkownikom zmianę własnych haseł podczas blokowania dostępu do IAM

{ 
    "Version": "2012-10-17", 
    "Statement": [ 
    { 
     "Effect": "Allow", 
     "NotAction": "iam:*", 
     "Resource": "*" 
    } 
    ] 
} 

Blokuje to jednak możliwość zmiany haseł przez użytkowników. Jak mogę zablokować je z IAM, ale pozwolić im na zmianę haseł?

Odpowiedz

5

Przypisana polityka zapewnia dostęp do wszystkich działań, z wyjątkiem tych związanych z zarządzaniem tożsamością i dostępem AWS (IAM).

Dlatego, aby umożliwić użytkownikom zmianę hasła, podłączyć inną (dodatkową) politykę użytkownika/grupy, która przyznaje uprawnienia do zmiany hasła:

{ 
    "Version": "2012-10-17", 
    "Statement": [ 
    { 
     "Sid": "SomeSID", 
     "Effect": "Allow", 
     "Action": [ 
     "iam:ChangePassword" 
     ], 
     "Resource": [ 
     "*" 
     ] 
    } 
    ] 
} 

Podczas "deny" normalnie przesłonięcie "allow", to pierwotna polisa nie używała odmowy - przyznawała jedynie pozwolenie na wszystko z wyjątkiem IAM. Dlatego dodatkowe "zezwolenie" przyzna pożądane uprawnienia.

0

Amazon provides an example policy że nie wymaga ręcznego określania identyfikatora użytkownika dla każdego użytkownika:

{ 
    "Version": "2012-10-17", 
    "Statement": [ 
    { 
     "Effect": "Allow", 
     "Action": [ 
     "iam:*LoginProfile", 
     "iam:*AccessKey*", 
     "iam:*SSHPublicKey*" 
     ], 
     "Resource": "arn:aws:iam::account-id-without-hyphens:user/${aws:username}" 
    }, 
    { 
     "Effect": "Allow", 
     "Action": [ 
     "iam:ListAccount*", 
     "iam:GetAccountSummary", 
     "iam:GetAccountPasswordPolicy", 
     "iam:ListUsers" 
     ], 
     "Resource": "*" 
    } 
    ] 
} 

Jednak zmiana hasła (przynajmniej podczas pierwszego logowania, gdy „wymaga zmiany hasła przy pierwszym logowaniu” została zaznaczona podczas tworzenia użytkownika) nadal wydaje się wymagać uprawnienia iam:ChangePassword.

Znacznie lepiej jest włączyć politykę haseł i zaznaczyć pole "Zezwalaj użytkownikom na zmianę własnego hasła"; robi to dokładnie tak, jak mówi na puszce, bez grzebania w pobliżu.

Powiązane problemy