SEC02-BP06 Nutzen von Benutzergruppen und Attributen - AWS Well-Architected Framework

SEC02-BP06 Nutzen von Benutzergruppen und Attributen

Die Definition von Berechtigungen nach Benutzergruppen und Attributen trägt dazu bei, die Anzahl und Komplexität von Richtlinien zu reduzieren, sodass das Prinzip der geringsten Berechtigung einfacher umgesetzt werden kann.  Sie können Benutzergruppen verwenden, um die Berechtigungen für viele Personen an einem Ort zu verwalten, basierend auf der Funktion, die sie in Ihrer Organisation innehaben.  Attribute, wie z. B. Abteilung oder Standort, können eine zusätzliche Ebene des Berechtigungsumfangs bieten, wenn Personen eine ähnliche Funktion ausüben, aber für unterschiedliche Teilmengen von Ressourcen.

Gewünschtes Ergebnis: Sie können Änderungen der Berechtigungen auf alle Benutzer anwenden, die eine bestimmte Funktion ausführen.  Die Gruppenzugehörigkeit und -attribute regeln die Benutzerberechtigungen, sodass Sie die Berechtigungen nicht mehr auf der Ebene der einzelnen Benutzer verwalten müssen.  Die Gruppen und Attribute, die Sie in Ihrem Identitätsanbieter (IDP) definieren, werden automatisch an Ihre AWS-Umgebungen weitergegeben.

Typische Anti-Muster:

  • Verwaltung von Berechtigungen für einzelne Benutzer und Duplizierung für viele Benutzer.

  • Definition von Gruppen auf einer zu hohen Ebene, Gewährung von zu weitreichenden Berechtigungen.

  • Die Definition von Gruppen auf einer zu granularen Ebene, was zu Doppelarbeit und Verwirrung über die Mitgliedschaft führt.

  • Verwendung von Gruppen mit doppelten Berechtigungen für Teilmengen von Ressourcen, wenn stattdessen Attribute verwendet werden können.

  • Keine Verwaltung von Gruppen, Attributen und Mitgliedschaften über einen standardisierten Identitätsanbieter, der in Ihre AWS-Umgebungen integriert ist.

Risikostufe, wenn diese bewährte Methode nicht eingeführt wird: Mittel

Implementierungsleitfaden

AWS-Berechtigungen werden in Dokumenten definiert, die als Richtlinien bezeichnet werden und einem Prinzipal zugeordnet sind, z. B. einem Benutzer, einer Gruppe, einer Rolle oder einer Ressource.  So können Sie für Ihre Mitarbeiter Gruppen definieren, die auf der Funktion basieren, die Ihre Benutzer in Ihrer Organisation innehaben, und nicht auf den Ressourcen, auf die sie zugreifen. Einer WebAppDeveloper-Gruppe kann beispielsweise eine Richtlinie für die Konfiguration eines Services wie Amazon CloudFront innerhalb eines Entwicklungskontos angehängt sein. Eine AutomationDeveloper-Gruppe kann einige CloudFront-Berechtigungen mit der WebAppDeveloper-Gruppe gemeinsam haben. Diese Berechtigungen können in einer separaten Richtlinie erfasst und beiden Gruppen zugeordnet werden. Dadurch ist es nicht erforderlich, dass Benutzer beider Funktionen zu einer CloudFrontAccess-Gruppe gehören.

Zusätzlich zu Gruppen können Sie Attribute verwenden, um den Zugriff festzulegen. Sie können beispielsweise ein Project-Attribut für Benutzer in Ihrer WebAppDeveloper-Gruppe nutzen, damit die Benutzer nur auf Ressourcen ihres Projekts zugreifen können.  Mit dieser Technik entfällt die Notwendigkeit, für Anwendungsentwickler, die an verschiedenen Projekten arbeiten, unterschiedliche Gruppen einzurichten, wenn ihre Berechtigungen ansonsten identisch sind.  Die Art und Weise, wie Sie sich auf Attribute in Berechtigungsrichtlinien beziehen, hängt von deren Quelle ab, d. h. ob sie als Teil Ihres Verbundprotokolls (wie SAML, OIDC oder SCIM), als benutzerdefinierte SAML-Assertions oder innerhalb von IAM Identity Center definiert sind.

Implementierungsschritte

  1. Legen Sie fest, wo Sie Gruppen und Attribute definieren wollen.

    1. Anhand der Anleitung unter SEC02-BP04 Verlassen auf einen zentralen Identitätsanbieter können Sie festlegen, ob Sie Gruppen und Attribute innerhalb Ihres Identitätsanbieters, innerhalb von IAM Identity Center oder mithilfe von IAM-Benutzergruppen in einem bestimmten Konto definieren müssen.

  2. Definieren Sie Gruppen.

    1. Legen Sie Ihre Gruppen je nach Funktion und Umfang des erforderlichen Zugriffs fest.  

    2. Wenn Sie innerhalb von IAM Identity Center definieren, erstellen Sie Gruppen und ordnen Sie die gewünschte Zugriffsebene mithilfe von Berechtigungsgruppen zu.

    3. Wenn Sie die Definition innerhalb eines externen Identitätsanbieters vornehmen, stellen Sie fest, ob der Anbieter das SCIM-Protokoll unterstützt und erwägen Sie die Aktivierung der automatischen Bereitstellung innerhalb von IAM Identity Center.  Diese Funktion synchronisiert die Erstellung, Mitgliedschaft und Löschung von Gruppen zwischen Ihrem Anbieter und IAM Identity Center.

  3. Attribute definieren.

    1. Wenn Sie einen externen Identitätsanbieter verwenden, bieten sowohl das SCIM- als auch das SAML 2.0-Protokoll standardmäßig bestimmte Attribute.  Zusätzliche Attribute können mithilfe von SAML-Zusicherungen unter Verwendung des https://aws.amazon.com/SAML/Attributes/PrincipalTag-Attributnamens definiert und übergeben werden.

    2. Wenn Sie die Definition innerhalb von IAM Identity Center vornehmen, aktivieren Sie das Feature attributbasierte Zugriffskontrolle (ABAC) und definieren Sie die Attribute nach Bedarf.

  4. Umfangsberechtigungen basierend auf Gruppen und Attributen.

    1. Erwägen Sie, Bedingungen in Ihre Genehmigungsrichtlinien aufzunehmen, die die Attribute Ihres Prinzipals mit den Attributen der Ressourcen vergleichen, auf die zugegriffen wird.  Sie können beispielsweise eine Bedingung so definieren, dass der Zugriff auf eine Ressource nur dann gewährt wird, wenn der Wert eines PrincipalTag-Bedingungsschlüssels mit dem Wert eines ResourceTag-Schlüssels mit demselben Namen übereinstimmt.

Ressourcen

Zugehörige bewährte Methoden:

Zugehörige Dokumente:

Zugehörige Videos: