Erstellen und Verwenden einer IAM-Richtlinie für den IAM-Datenbankzugriff - Amazon Aurora

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.

Erstellen und Verwenden einer IAM-Richtlinie für den IAM-Datenbankzugriff

Sie müssen eine IAM-Richtlinie erstellen, um einem Benutzer oder einer Rolle zu erlauben, eine Verbindung mit Ihrem DB-Cluster herzustellen. Anschließend fügen Sie die Richtlinie an einen Berechtigungssatz oder eine Rolle an.

Anmerkung

Weitere Informationen zu IAM-Richtlinien finden Sie unter Identity and Access Management für Amazon Aurora.

Die folgende Beispielrichtlinie erlaubt einem Benutzer, eine Verbindung mit einem DB-Cluster mithilfe der IAM-Datenbank-Authentifizierung herzustellen.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "rds-db:connect" ], "Resource": [ "arn:aws:rds-db:us-east-2:1234567890:dbuser:cluster-ABCDEFGHIJKL01234/db_user" ] } ] }
Wichtig

Ein Benutzer mit Administratorberechtigungen kann auf DB-Cluster zugreifen, ohne über eine IAM-Richtlinie explizite Berechtigungen zu erhalten. Wenn Sie den Administratorzugriff auf DB--Cluster einschränken möchten, können Sie eine IAM-Rolle mit geeigneten, weniger privilegierten Berechtigungen erstellen und diese dem Administrator zuweisen.

Anmerkung

Verwechseln Sie das Präfix rds-db: nicht mit anderen RDS-API-Operationspräfixen, die mit rds: beginnen. Das Präfix rds-db: und die Aktion rds-db:connect werden nur zur IAM-Datenbank-Authentifizierung verwendet. Sie sind in keinem anderen Kontext gültig.

Die Beispielrichtlinie enthält eine einzige Anweisung mit den folgenden Elementen:

  • Effect – Geben Sie Allow an, um den Zugriff auf den DB-Cluster zu gewähren. Wenn Sie den Zugriff nicht ausdrücklich erlauben, wird er automatisch verweigert.

  • Action – Geben Sie rds-db:connect an, um Verbindungen mit dem DB-Cluster zu erlauben.

  • Resource – Geben Sie einen Amazon-Ressourcennamen (ARN) an, der ein Datenbankkonto auf einem DB-Cluster beschreibt. Das ARN-Format lautet folgendermaßen.

    arn:aws:rds-db:region:account-id:dbuser:DbClusterResourceId/db-user-name

    Ersetzen Sie in diesem Format Folgendes:

    • region ist die AWS-Region für die DB-Cluster. In der Beispielrichtlinie lautet die AWS-Region us-east-2.

    • account-id bezeichnet die AWS-Kontonummer für die DB- Cluster In der Beispielrichtlinie lautet die Kontonummer 1234567890. Der Benutzer muss dasselbe Konto wie das Konto für die/den DB-Cluster haben.

      Um einen kontoübergreifenden Zugriff durchzuführen, erstellen Sie eine IAM-Rolle mit der oben angegebenen Richtlinie im Konto für die/den DB-Cluster und erlauben Sie Ihrem anderen Konto, die Rolle zu übernehmen.

    • DbClusterResourceId ist die Kennung des DB-Clusters. Diese Kennung ist für eineAWS-Region eindeutig und unveränderlich. In dieser Beispielrichtlinie lautet die Kennung cluster-ABCDEFGHIJKL01234.

      Um die Ressourcen-ID eines DB-Clusters in der AWS Management Console für Amazon Aurora zu ermitteln, wählen Sie den DB-Cluster zum Anzeigen von Details aus. Wechseln Sie zur Registerkarte Konfiguration. Die Resource ID (Ressourcen-ID) wird im Abschnitt Configuration Details (Konfigurationsdetails) angezeigt.

      Alternativ können Sie den AWS CLI-Befehl verwenden, um die Kennungen und Ressourcen-IDs für alle Ihre DB-Cluster in der aktuellen AWS-Region aufzulisten, wie nachstehend aufgeführt.

      aws rds describe-db-clusters --query "DBClusters[*].[DBClusterIdentifier,DbClusterResourceId]"
      Anmerkung

      Wenn Sie über den RDS-Proxy eine Verbindung zu einer Datenbank herstellen, geben Sie die Proxy-Ressourcen-ID an, z. B. prx-ABCDEFGHIJKL01234. Hinweise zur Verwendung der IAM-Datenbankauthentifizierung mit RDS-Proxy finden Sie unter Herstellen einer Verbindung mit einem Proxy mithilfe der IAM-Authentifizierung.

    • db-user-name ist der Name des mit der IAM-Authentifizierung zu verknüpfenden Datenbankkontos. In der Beispielrichtlinie lautet das Datenbankkonto db_user.

Sie können andere ARN erstellen, um mehrere Zugriffsmuster zu unterstützen. Die folgende Richtlinie erlaubt den Zugriff auf zwei verschiedene Datenbankkonten auf einem DB-Cluster.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "rds-db:connect" ], "Resource": [ "arn:aws:rds-db:us-east-2:123456789012:dbuser:cluster-ABCDEFGHIJKL01234/jane_doe", "arn:aws:rds-db:us-east-2:123456789012:dbuser:cluster-ABCDEFGHIJKL01234/mary_roe" ] } ] }

Die nachstehende Richtlinie verwendet das Zeichen "*", um alle DB-Cluster und Datenbankkonten eines bestimmten AWS-Kontos und in einer bestimmten AWS-Region freizugeben.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "rds-db:connect" ], "Resource": [ "arn:aws:rds-db:us-east-2:1234567890:dbuser:*/*" ] } ] }

Die nachstehende Richtlinie gleicht alle DB-Cluster eines bestimmten AWS-Kontos und in einer bestimmten AWS-Region ab. Allerdings gewährt die Richtlinie nur den Zugriff auf DB-Cluster, die über ein jane_doe-Datenbankkonto verfügen.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "rds-db:connect" ], "Resource": [ "arn:aws:rds-db:us-east-2:123456789012:dbuser:*/jane_doe" ] } ] }

Der Benutzer oder die Rolle hat nur auf jene Datenbanken Zugriff, auf die der Datenbankbenutzer zugreifen kann. Nehmen wir beispielsweise an, dass Ihr DB-Cluster über eine Datenbank mit dem Namen dev und eine weitere Datenbank mit dem Namen test verfügt. Wenn der Datenbankbenutzer jane_doe nur auf dev zugreifen kann, haben auch alle anderen Benutzer oder Rollen, die auf diesen DB-Cluster mit dem Benutzer jane_doe zugreifen, lediglich die Berechtigung für den Zugriff auf dev. Diese Zugriffsbeschränkung gilt auch für andere Datenbankobjekte, wie z. B. Tabellen, Ansichten usw.

Ein Administrator muss IAM-Richtlinien erstellen, die Entitäten die Berechtigung zum Ausführen bestimmter API-Operationen für die angegebenen Ressourcen gewähren, die diese benötigen. Der Administrator muss diese Richtlinien anschließend den Berechtigungssätzen oder Rollen anfügen, die diese Berechtigungen benötigen. Beispiele für Richtlinien finden Sie unter Beispiele für identitätsbasierte Amazon-Aurora-Richtlinien.

Anfügen einer IAM-Richtlinie an einen Berechtigungssatz oder eine Rolle

Nachdem Sie eine IAM-Richtlinie erstellt haben, um die Datenbank-Authentifizierung zu erlauben, müssen Sie die Richtlinie an einen Berechtigungssatz oder eine Rolle anfügen. Eine praktische Anleitung zu diesem Thema finden Sie unter Erstellen und Anfügen Ihrer ersten vom Kunden verwalteten Richtlinie im IAM-Benutzerhandbuch.

Wenn Sie die praktischen Anleitung durchgehen, können Sie eine der in diesem Abschnitt aufgeführten Beispielrichtlinien als Ausgangsbasis verwenden und auf Ihre Bedürfnisse anpassen. Am Ende des Tutorials verfügen Sie über einen Berechtigungssatz mit einer angefügten Richtlinie, der zur Durchführung der Aktion rds-db:connect berechtigt ist.

Anmerkung

Sie können mehrere Berechtigungssätze oder Rollen mit demselben Datenbank-Benutzerkonto verknüpfen. Nehmen wir beispielsweise an, dass Ihre IAM-Richtlinie folgenden Ressourcen-ARN enthält.

arn:aws:rds-db:us-east-2:123456789012:dbuser:cluster-12ABC34DEFG5HIJ6KLMNOP78QR/jane_doe

Wenn Sie die Richtlinie an Jane, Bob und Diego anfügen, sind diese Benutzer in der Lage, eine Verbindung mit dem angegebenen DB-Cluster mithilfe des Datenbankkontos jane_doe herzustellen.