Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
Berechtigungsgrenzen für IAM-Entitäten
AWS unterstützt Berechtigungsgrenzen für IAM Entitäten (Benutzer oder Rollen). Eine Berechtigungsgrenze ist eine erweiterte Funktion zur Verwendung einer verwalteten Richtlinie, um die maximalen Berechtigungen festzulegen, die eine identitätsbasierte Richtlinie einer IAM Entität gewähren kann. Durch eine Berechtigungsgrenze kann eine Entität nur die Aktionen durchführen, die sowohl von den identitätsbasierten Richtlinien als auch den Berechtigungsgrenzen erlaubt werden.
Weitere Informationen zu Richtlinientypen finden Sie unter Richtlinientypen.
Wichtig
Verwenden Sie keine ressourcenbasierten Richtlinienerklärungen, die ein NotPrincipal
Richtlinienelement enthalten, das sich auf IAM Benutzer oder Rollen Deny
auswirkt, denen eine Berechtigungsgrenzrichtlinie zugewiesen ist. Das NotPrincipal
Element mit Deny
Wirkung verweigert immer jeden IAM Prinzipal, dem eine Richtlinie zur Begrenzung der Rechte zugewiesen ist, unabhängig von den NotPrincipal
im Element angegebenen Werten. Dies führt dazu, dass einige IAM Benutzer oder Rollen, die andernfalls Zugriff auf die Ressource hätten, den Zugriff verlieren. Wir empfehlen Ihnen, Ihre ressourcenbasierten Richtlinien dahingehend zu ändern, dass Sie den Bedingungsoperator ArnNotEquals mit dem aws:PrincipalArn-Kontextschlüssel verwenden, um den Zugriff zu begrenzen, anstatt das NotPrincipal
-Element. Weitere Informationen zum NotPrincipal
-Element finden Sie unter AWS JSONpolitische Elemente: NotPrincipal.
Sie können eine AWS verwaltete Richtlinie oder eine vom Kunden verwaltete Richtlinie verwenden, um die Grenze für eine IAM Entität (Benutzer oder Rolle) festzulegen. Diese Richtlinie begrenzt die maximalen Berechtigungen für den Benutzer oder die Rolle.
Gehen Sie beispielsweise davon aus, dass der angegebene IAM ShirleyRodriguez
Benutzer nur Amazon S3, Amazon und Amazon CloudWatch verwalten darfEC2. Um diese Regel durchzusetzen, können Sie die folgende Richtlinie verwenden, um die Berechtigungsgrenze für den Benutzer ShirleyRodriguez
festzulegen:
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "s3:*", "cloudwatch:*", "ec2:*" ], "Resource": "*" } ] }
Wenn Sie eine Richtlinie verwenden, um die Berechtigungsgrenze für einen Benutzer festzulegen, schränkt sie die Berechtigungen des Benutzers ein, erteilt aber selbst keine Berechtigungen. In diesem Beispiel legt die Richtlinie die maximalen Berechtigungen für alle Operationen in Amazon S3 und Amazon festEC2. ShirleyRodriguez
CloudWatch Shirley kann niemals Operationen in einem anderen Dienst ausführen, auch nicht, wenn sie über eine Berechtigungsrichtlinie verfügt, die dies zulässt. IAM Sie können z. B. dem Benutzer ShirleyRodriguez
die folgende Richtlinie hinzufügen:
{ "Version": "2012-10-17", "Statement": { "Effect": "Allow", "Action": "iam:CreateUser", "Resource": "*" } }
Diese Richtlinie ermöglicht das Erstellen eines Benutzers inIAM. Wenn Sie diese Berechtigungsrichtlinie dem Benutzer ShirleyRodriguez
anfügen und Shirley versucht, einen Benutzer zu erstellen, schlägt die Operation fehl. Sie schlägt fehl, weil die Berechtigungsgrenze den iam:CreateUser
-Vorgang nicht zulässt. Angesichts dieser beiden Richtlinien hat Shirley keine Berechtigung, Operationen in AWS durchzuführen. Sie müssen eine andere Berechtigungsrichtlinie hinzufügen, um Aktionen in anderen Diensten zuzulassen, z. B. Amazon S3. Alternativ könnten Sie die Berechtigungsgrenze aktualisieren, damit sie einen Benutzer in erstellen kannIAM.
Auswerten von effektiven Berechtigungen mit Grenzen
Die Berechtigungsgrenze für eine IAM Entität (Benutzer oder Rolle) legt die maximalen Berechtigungen fest, die die Entität haben kann. Dies kann die effektiven Berechtigungen für diesen Benutzer oder diese Rolle ändern. Die effektiven Berechtigungen für eine Entität sind die Berechtigungen, die von allen Richtlinien gewährt werden, die den Benutzer oder die Rolle betreffen. Innerhalb eines Kontos können die Berechtigungen für eine Entität durch identitätsbasierte Richtlinien, ressourcenbasierte Richtlinien, BerechtigungsgrenzenSCPs, Organizations oder Sitzungsrichtlinien beeinflusst werden. Weitere Informationen zu den unterschiedlichen Richtlinientypen finden Sie unter Richtlinien und Berechtigungen in AWS Identity and Access Management.
Wenn eine dieser Richtlinientypen explizit den Zugriff für eine Operation verweigert, dann wird die Anforderung abgelehnt. Die Berechtigungen, die einer Entität durch mehrere Berechtigungstypen gewährt werden, sind komplexer. Weitere Informationen darüber, wie Richtlinien AWS bewertet werden, finden Sie unter. Auswertungslogik für Richtlinien
Identitätsbasierte Richtlinien mit Grenzen – Identitätsbasierte Richtlinien sind verwaltete oder eingebundene Richtlinien, die einem Benutzer, einer Gruppe von Benutzern oder einer Rolle zugewiesen sind. Identitätsbasierte Richtlinien erteilen die Berechtigung für die Entität, Berechtigungsgrenzen beschränken diese Berechtigungen. Effektive Berechtigungen ergeben sich aus der Überlschneidung der beiden Richtlinientypen. Eine explizite Zugriffsverweigerung in einer der beiden Richtlinien überschreibt die Zugriffserlaubnis.
Ressourcenbasierte Richtlinien – Ressourcenbasierte Richtlinien steuern, wie der angegebene Auftraggeber auf die Ressource zugreifen kann, der die Richtlinie angefügt ist.
- Ressourcenbasierte Richtlinien für IAM-Benutzer
-
Innerhalb desselben Kontos werden ressourcenbasierte Richtlinien, die einem Benutzer Berechtigungen gewähren ARN (d. h. es handelt sich nicht um eine IAM Verbundbenutzersitzung), nicht durch eine implizite Verweigerung in einer identitätsbasierten Richtlinie oder durch eine Berechtigungsgrenze eingeschränkt.
- Ressourcenbasierte Richtlinien für Rollen IAM
-
IAMRolle — Ressourcenbasierte Richtlinien, die einer IAM Rolle Berechtigungen gewähren, ARN werden durch eine implizite Verweigerung in einer Berechtigungsgrenze oder einer Sitzungsrichtlinie eingeschränkt.
IAMRollensitzung — Innerhalb desselben Kontos gewähren ressourcenbasierte Richtlinien, die Berechtigungen für eine IAM Rollensitzung ARN gewähren, Berechtigungen direkt für die angenommene Rollensitzung. Berechtigungen, die direkt für eine Sitzung gewährt werden, sind nicht durch eine implizite Verweigerung in einer identitätsbasierten Richtlinie, einer Berechtigungsgrenze oder einer Sitzungsrichtlinie beschränkt. Wenn Sie eine Rolle übernehmen und eine Anfrage stellen, ist der Hauptbenutzer, der die Anfrage stellt, die IAM Rollensitzung ARN und nicht der ARN der Rolle selbst.
- Ressourcenbasierte Richtlinien für IAM föderierte Benutzersitzungen
-
IAMVerbundbenutzersitzungen — Eine IAM föderierte Benutzersitzung ist eine Sitzung, die durch einen Aufruf erstellt wird. GetFederationToken Wenn ein Verbundbenutzer eine Anfrage stellt, ist der Hauptbenutzer, der die Anfrage stellt, der Verbundbenutzer ARN und nicht der Benutzer, ARN der den IAM Verbund erstellt hat. Innerhalb desselben Kontos gewähren ressourcenbasierte Richtlinien, die einem Verbundbenutzer ARN Berechtigungen gewähren, Berechtigungen direkt für die Sitzung. Berechtigungen, die direkt für eine Sitzung gewährt werden, sind nicht durch eine implizite Verweigerung in einer identitätsbasierten Richtlinie, einer Berechtigungsgrenze oder einer Sitzungsrichtlinie beschränkt.
Wenn jedoch eine ressourcenbasierte Richtlinie dem Benutzer, ARN der den Verbund erstellt hat, die Erlaubnis erteilt, werden die Anfragen, die der IAM Verbundbenutzer während der Sitzung stellt, durch eine implizite Verweigerung in einer Berechtigungsgrenze oder in einer Sitzungsrichtlinie eingeschränkt.
Organizations SCPs — SCPs werden auf ein Ganzes angewendet AWS-Konto. Sie schränken die Berechtigungen für jede Anforderung ein, die von einem Auftraggeber innerhalb des Kontos gesendet wurden. Eine IAM Entität (Benutzer oder Rolle) kann eine Anfrage stellen, die von einerSCP, einer Berechtigungsgrenze und einer identitätsbasierten Richtlinie betroffen ist. In diesem Fall wird die Anforderung nur gewährt, wenn alle drei Richtlinientypen sie zulassen. Die effektiven Berechtigungen ergeben sich aus der Überschneidung der drei Richtlinientypen. Eine explizite Zugriffsverweigerung in einer dieser Richtlinien setzt eine Zugriffserlaubnis außer Kraft.
Sie können erfahren ob Ihr Konto als Mitgliedskonto einer Organisation in AWS Organizations eingerichtet ist. Mitglieder der Organisation könnten von einer betroffen sein. SCP Um diese Daten mit dem AWS CLI
Befehl oder der AWS API Operation anzeigen zu können, benötigen Sie Berechtigungen für die organizations:DescribeOrganization
Aktion für Ihre Organisationseinheit. Sie müssen über zusätzliche Berechtigungen verfügen, um die Operation in der Organizations-Konsole auszuführen. Um zu erfahren, ob an SCP den Zugriff auf eine bestimmte Anfrage verweigert, oder um Ihre aktuellen Berechtigungen zu ändern, wenden Sie sich an Ihren AWS Organizations Administrator.
Sitzungsrichtlinien – Sitzungsrichtlinien sind erweiterte Richtlinien, die Sie als Parameter übergeben, wenn Sie eine temporäre Sitzung für eine Rolle oder einen verbundenen Benutzer programmgesteuert erstellen. Die Berechtigungen für eine Sitzung stammen von der IAM Entität (Benutzer oder Rolle), die zur Erstellung der Sitzung verwendet wurde, und von der Sitzungsrichtlinie. Die identitätsbasierten Richtlinienberechtigungen der Entität werden von der Sitzungsrichtlinie und der Berechtigungsgrenze eingeschränkt. Die effektiven Berechtigungen für diese Gruppe von Richtlinientypen ergeben sich aus der Überschneidung aller drei Richtlinientypen. Eine explizite Zugriffsverweigerung in einer dieser Richtlinien setzt eine Zugriffserlaubnis außer Kraft. Weitere Informationen zu Sitzungsrichtlinien finden Sie unter Sitzungsrichtlinien.
Verantwortung mit Hilfe von Berechtigungsgrenzen an andere delegieren
Sie können Berechtigungsgrenzen verwenden, um Aufgaben der Rechteverwaltung, wie z. B. die Benutzererstellung, an IAM Benutzer in Ihrem Konto zu delegieren. Dies erlaubt es anderen, Aufgaben in Ihrem Namen innerhalb einer bestimmten Berechtigungsgrenze auszuführen.
Nehmen wir zum Beispiel an, dass María die Administratorin der X-Company ist. AWS-Konto Sie möchte die Aufgaben der Benutzererstellung an Zhang delegieren. Sie muss jedoch sicherstellen, dass Zhang Benutzer erstellt, die sich an die folgenden Unternehmensregeln halten:
-
Benutzer können IAM sie nicht zum Erstellen oder Verwalten von Benutzern, Gruppen, Rollen oder Richtlinien verwenden.
-
Benutzern wird der Zugriff auf den Amazon S3
logs
S3-Bucket verweigert und sie können nicht auf diei-1234567890abcdef0
EC2 Amazon-Instance zugreifen. -
Benutzer können ihre eigenen Begrenzungsrichtlinien nicht entfernen.
Um diese Regeln durchzusetzen, führt María die folgenden Aufgaben durch, die im Folgenden näher erläutert werden:
-
María erstellt die verwaltete Richtlinie
XCompanyBoundaries
als Berechtigungsgrenze für alle neuen Benutzer im Konto. -
María erstellt die verwaltete Richtlinie
DelegatedUserBoundary
und weist sie als Berechtigungsgrenze für Zhang zu. Maria notiert sich den Namen ihres Admin-Benutzers ARN und verwendet ihn in der Richtlinie, um zu verhindern, dass Zhang darauf zugreift. -
María erstellt die verwaltete Richtlinie
DelegatedUserPermissions
und fügt sie als Berechtigungsrichtlinie für Zhang hinzu. -
María informiert Zhang über seine neuen Aufgaben und Grenzen.
Aufgabe 1: María muss zuerst eine verwaltete Richtlinie erstellen, um die Grenzen für die neuen Benutzer festzulegen. María wird es Zhang erlauben, den Benutzern die erforderlichen Rechte zu geben, aber sie möchte, dass diese Benutzer eingeschränkt werden. Zu diesem Zweck erstellt sie die folgende kundenverwaltete Richtlinie mit dem Namen XCompanyBoundaries
. Diese Richtlinie gewährt die folgenden Aktionen:
-
Ermöglicht den Benutzern den vollständigen Zugriff auf mehrere Services
-
Ermöglicht eingeschränkten, sich selbst verwaltenden Zugriff in der IAM Konsole. Das bedeutet, dass sie ihr Passwort ändern können, nachdem sie sich bei der Konsole angemeldet haben. Sie können ihr anfängliches Passwort nicht festlegen. Um dies zu ermöglichen, fügen Sie die Aktion
"*LoginProfile"
zur AnweisungAllowManageOwnPasswordAndAccessKeys
hinzu. -
Verweigert Benutzern den Zugriff auf den Amazon S3 S3-Logs-Bucket oder die
i-1234567890abcdef0
Amazon-Instance EC2
{ "Version": "2012-10-17", "Statement": [ { "Sid": "ServiceBoundaries", "Effect": "Allow", "Action": [ "s3:*", "cloudwatch:*", "ec2:*", "dynamodb:*" ], "Resource": "*" }, { "Sid": "AllowIAMConsoleForCredentials", "Effect": "Allow", "Action": [ "iam:ListUsers", "iam:GetAccountPasswordPolicy" ], "Resource": "*" }, { "Sid": "AllowManageOwnPasswordAndAccessKeys", "Effect": "Allow", "Action": [ "iam:*AccessKey*", "iam:ChangePassword", "iam:GetUser", "iam:*ServiceSpecificCredential*", "iam:*SigningCertificate*" ], "Resource": ["arn:aws:iam::*:user/${aws:username}"] }, { "Sid": "DenyS3Logs", "Effect": "Deny", "Action": "s3:*", "Resource": [ "arn:aws:s3:::logs", "arn:aws:s3:::logs/*" ] }, { "Sid": "DenyEC2Production", "Effect": "Deny", "Action": "ec2:*", "Resource": "arn:aws:ec2:*:*:instance/i-1234567890abcdef0" } ] }
Jede Anweisung dient einem anderen Zweck:
-
Gemäß
ServiceBoundaries
dieser Richtlinie wird der uneingeschränkte Zugriff auf die angegebenen AWS Dienste gewährt. Dies bedeutet, dass die Aktionen eines neuen Benutzers in diesen Services nur laut der Berechtigungsrichtlinien begrenzt sind, die dem Benutzer zugeordnet sind. -
Die
AllowIAMConsoleForCredentials
Erklärung ermöglicht den Zugriff auf eine Liste aller IAM Benutzer. Dieser Zugriff ist erforderlich, um auf der Seite Users (Benutzer) in der AWS Management Console navigieren zu können. Außerdem können die Passwortanforderungen für das Konto angezeigt werden, was erforderlich ist, wenn Sie Ihr eigenes Passwort ändern. -
Mit der
AllowManageOwnPasswordAndAccessKeys
-Anweisung können Benutzer nur ihr eigenes Konsolen-Passwort und programmatische Zugriffsschlüssel verwalten. Dies ist wichtig, wenn Zhang oder ein anderer Administrator einem neuen Benutzer eine Berechtigungsrichtlinie mit vollem IAM Zugriff zuweist. In diesem Fall könnte der Benutzer seine eigenen Berechtigungen oder die anderer Benutzer ändern. Diese Anweisung verhindert, dass dies passiert. -
Die Anweisung
DenyS3Logs
verweigert explizit den Zugriff auf denlogs
-Bucket. -
Die Anweisung
DenyEC2Production
verweigert explizit den Zugriff auf diei-1234567890abcdef0
-Instance.
Aufgabe 2: María möchte Zhang erlauben, alle Benutzer für die X-Company Benutzer zu erstellen, aber nur mit der Berechtigungsgrenze XCompanyBoundaries
. Sie erstellt die folgende kundenverwaltete Richtlinie mit dem Namen DelegatedUserBoundary
. Diese Richtlinie definiert die maximale Berechtigungen, die Zhang haben kann.
{ "Version": "2012-10-17", "Statement": [ { "Sid": "CreateOrChangeOnlyWithBoundary", "Effect": "Allow", "Action": [ "iam:AttachUserPolicy", "iam:CreateUser", "iam:DeleteUserPolicy", "iam:DetachUserPolicy", "iam:PutUserPermissionsBoundary", "iam:PutUserPolicy" ], "Resource": "*", "Condition": { "StringEquals": { "iam:PermissionsBoundary": "arn:aws:iam::123456789012:policy/XCompanyBoundaries" } } }, { "Sid": "CloudWatchAndOtherIAMTasks", "Effect": "Allow", "Action": [ "cloudwatch:*", "iam:CreateAccessKey", "iam:CreateGroup", "iam:CreateLoginProfile", "iam:CreatePolicy", "iam:DeleteGroup", "iam:DeletePolicy", "iam:DeletePolicyVersion", "iam:DeleteUser", "iam:GetAccountPasswordPolicy", "iam:GetGroup", "iam:GetLoginProfile", "iam:GetPolicy", "iam:GetPolicyVersion", "iam:GetRolePolicy", "iam:GetUser", "iam:GetUserPolicy", "iam:ListAccessKeys", "iam:ListAttachedRolePolicies", "iam:ListAttachedUserPolicies", "iam:ListEntitiesForPolicy", "iam:ListGroups", "iam:ListGroupsForUser", "iam:ListMFADevices", "iam:ListPolicies", "iam:ListPolicyVersions", "iam:ListRolePolicies", "iam:ListSSHPublicKeys", "iam:ListServiceSpecificCredentials", "iam:ListSigningCertificates", "iam:ListUserPolicies", "iam:ListUsers", "iam:SetDefaultPolicyVersion", "iam:SimulateCustomPolicy", "iam:SimulatePrincipalPolicy", "iam:UpdateGroup", "iam:UpdateLoginProfile", "iam:UpdateUser" ], "NotResource": "arn:aws:iam::123456789012:user/Maria" }, { "Sid": "NoBoundaryPolicyEdit", "Effect": "Deny", "Action": [ "iam:CreatePolicyVersion", "iam:DeletePolicy", "iam:DeletePolicyVersion", "iam:SetDefaultPolicyVersion" ], "Resource": [ "arn:aws:iam::123456789012:policy/XCompanyBoundaries", "arn:aws:iam::123456789012:policy/DelegatedUserBoundary" ] }, { "Sid": "NoBoundaryUserDelete", "Effect": "Deny", "Action": "iam:DeleteUserPermissionsBoundary", "Resource": "*" } ] }
Jede Anweisung dient einem anderen Zweck:
-
Die
CreateOrChangeOnlyWithBoundary
Anweisung ermöglicht es Zhang, IAM Benutzer zu erstellen, aber nur, wenn er dieXCompanyBoundaries
Richtlinie verwendet, um die Berechtigungsgrenze festzulegen. Diese Anweisung erlaubt es ihm auch, die Berechtigungsgrenze für bestehende Benutzer festzulegen, jedoch nur mit der gleichen Richtlinie. Diese Anweisung schließlich erlaubt Zhang, Berechtigungsrichtlinien für Benutzer mit dieser Berechtigungsgrenze zu verwalten. -
Die Anweisung
CloudWatchAndOtherIAMTasks
ermöglicht es Zhang, andere Aufgaben der Benutzer-, Gruppen- und Richtlinienverwaltung auszuführen. Er ist berechtigt, Passwörter zurückzusetzen und Zugriffsschlüssel für alle IAM Benutzer zu erstellen, die nicht imNotResource
Richtlinienelement aufgeführt sind. Dadurch kann er Benutzern bei Anmeldeproblemen helfen. -
Die Anweisung
NoBoundaryPolicyEdit
verweigert Zhang Zugriff, um die RichtlinieXCompanyBoundaries
zu aktualisieren. Er darf keine Richtlinien ändern, die dazu dienen, die Berechtigungsgrenze für sich selbst oder andere Benutzer festzulegen. -
Die
NoBoundaryUserDelete
-Anweisung verweigert Zhang den Zugriff zum Löschen der Berechtigungsgrenze für ihn oder andere Benutzer.
María weist anschließend dieDelegatedUserBoundary
Richtlinie als Berechtigungsgrenze für den Benutzer Zhang
zu.
Aufgabe 3: Da die Berechtigungsgrenze die maximalen Berechtigungen begrenzt, aber selbst keinen Zugriff gewährt, muss Maria eine Berechtigungsrichtlinie für Zhang erstellen. Sie erstellt die folgende Richtlinie mit dem Namen DelegatedUserPermissions
. Diese Richtlinie definiert die Operationen, die Zhang innerhalb der definierten Grenzen ausführen kann.
{ "Version": "2012-10-17", "Statement": [ { "Sid": "IAM", "Effect": "Allow", "Action": "iam:*", "Resource": "*" }, { "Sid": "CloudWatchLimited", "Effect": "Allow", "Action": [ "cloudwatch:GetDashboard", "cloudwatch:GetMetricData", "cloudwatch:ListDashboards", "cloudwatch:GetMetricStatistics", "cloudwatch:ListMetrics" ], "Resource": "*" }, { "Sid": "S3BucketContents", "Effect": "Allow", "Action": "s3:ListBucket", "Resource": "arn:aws:s3:::ZhangBucket" } ] }
Jede Anweisung dient einem anderen Zweck:
-
Die
IAM
Erklärung der Richtlinie gewährt Zhang vollen Zugriff aufIAM. Da seine Rechtegrenze jedoch nur einige IAM Operationen zulässt, sind seine effektiven IAM Berechtigungen nur durch seine Berechtigungsgrenze begrenzt. -
Die
CloudWatchLimited
Anweisung ermöglicht es Zhang, fünf Aktionen in CloudWatch durchzuführen. Seine Rechtegrenze lässt alle Aktionen zu CloudWatch, sodass seine effektiven CloudWatch Berechtigungen nur durch seine Berechtigungsrichtlinie eingeschränkt werden. -
Mit der
S3BucketContents
-Anweisung kann Zhang den Amazon S3-BucketZhangBucket
auflisten. Allerdings erlaubt seine Berechtigungsgrenze keine Amazon S3-Aktion, so kann er keine S3-Operationen durchführen, unabhängig von seiner Berechtigungsrichtlinie.Anmerkung
Zhangs Richtlinien ermöglichen es ihm, einen Benutzer zu erstellen, der dann auf Amazon S3-Ressourcen zugreifen kann, auf die er nicht zugreifen kann. Durch die Delegation dieser administrativen Maßnahmen vertraut Maria effektiv Zhang mit dem Zugriff auf Amazon S3.
María weist anschließend die DelegatedUserPermissions
-Richtlinie als Berechtigungsrichtlinie für den Benutzer Zhang
zu.
Aufgabe 4: Sie gibt Zhang Anweisungen, einen neuen Benutzer zu erstellen. Sie sagt ihm, dass er neue Benutzer mit allen erforderlichen Berechtigungen anlegen kann, aber er muss ihnen die Richtlinie XCompanyBoundaries
als Berechtigungsgrenze zuweisen.
Zhang führt die folgenden Aufgaben aus:
-
Zhang erstellt einen Benutzer mit dem AWS Management Console. Er gibt den Benutzernamen
Nikhil
ein und aktiviert den Konsolenzugriff für den Benutzer. Er deaktiviert das Kontrollkästchen neben Erfordert ein Zurücksetzen des Kennworts, da die oben genannten Richtlinien es Benutzern erst ermöglichen, ihre Passwörter zu ändern, nachdem sie an der IAM Konsole angemeldet sind. -
Auf der Seite „Berechtigungen festlegen“ wählt Zhang die Berechtigungsrichtlinien IAMFullAccessund AmazonS3 aus, die es ReadOnlyAccess Nikhil ermöglichen, seine Arbeit zu erledigen.
-
Zhang überspringt den Abschnitt Set permissions boundary (Berechtigungsgrenze festlegen) und vergisst die Anweisungen von María.
-
Zhang überarbeitet die Benutzerdetails und wählt Create user (Benutzer erstellen).
Die Operation schlägt fehl und der Zugriff wird verweigert. Die Berechtigungsgrenze
DelegatedUserBoundary
von Zhang fordert, dass alle Benutzer, die er erstellt, die RichtlinieXCompanyBoundaries
als Berechtigungsgrenze verwenden. -
Zhang kehrt zurück auf die vorherige Seite. Im Abschnitt Set permissions boundary (Berechtigungsgrenze festlegen) wählt er die Richtlinie
XCompanyBoundaries
. -
Zhang überarbeitet die Benutzerdetails und wählt Create user (Benutzer erstellen).
Der Benutzer wird erstellt.
Wenn Nikhil sich anmeldet, hat er Zugriff IAM auf Amazon S3, mit Ausnahme der Operationen, die durch die Berechtigungsgrenze verweigert werden. Er kann beispielsweise sein eigenes Passwort ändern, IAM aber keinen anderen Benutzer erstellen oder seine Richtlinien bearbeiten. Nikhil hat schreibgeschützten Zugriff auf Amazon S3.
Wenn jemand dem logs
-Bucket eine ressourcenbasierte Richtlinie zuordnet, die Nikhil das Hinzufügen eines Objekts in den Bucket gewährt, dann kann immer noch nicht auf den Bucket zuzugreifen. Der Grund ist, dass alle Aktionen im logs
-Bucket durch seine Berechtigungsgrenze explizit verweigert werden. Eine explizite Zugriffsverweigerung in jedem Richtlinientyp führt dazu, dass eine Anforderung verweigert wird. Wenn jedoch eine ressourcenbasierte Richtlinie, die mit einem Secrets Manager-Geheimnis verknüpft ist, Nikhil erlaubt, die secretsmanager:GetSecretValue
-Aktion durchzuführen, kann Nikhil das Geheimnis abrufen und entschlüsseln. Der Grund dafür ist, dass Secrets Manager-Operationen von seiner Berechtigungsgrenze nicht explizit verweigert werden, und impliziete Zugriffsverweigerungen in Berechtigungsgrenzen beschränken keine ressourcenbasierte Richtlinien.