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 Identitäts- und Zugriffsmanagement für Amazon Aurora.

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

JSON
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "rds-db:connect" ], "Resource": [ "arn:aws:rds-db:us-east-2:111122223333:dbuser:db-ABCDEFGHIJKL01234/db_user" ] } ] }
JSON
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "rds-db:connect" ], "Resource": [ "arn:aws:rds-db:us-east-2:111122223333: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:

    • regionist die AWS Region für den . In der Beispielrichtlinie ist die AWS Regionus-east-2.

    • account-idist die AWS Kontonummer für den . In der Beispielrichtlinie lautet die Kontonummer 1234567890. Der Benutzer muss demselben Konto wie das Konto für den DB--Cluster angehören.

      Erstellen Sie für einen kontoübergreifenden Zugriff eine IAM-Rolle mit der oben angegebenen Richtlinie in dem Konto für 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 eine AWS Region eindeutig und ändert sich nie. In dieser Beispielrichtlinie lautet die Kennung cluster-ABCDEFGHIJKL01234.

      Um eine in Amazon Aurora AWS Management Console für Amazon zu finden, wählen Sie den aus, um dessen Details zu sehen. 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 Identifikatoren und Ressourcen IDs für Ihren gesamten in der aktuellen AWS Region aufzulisten, wie im Folgenden dargestellt.

      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 erstellen ARNs , um verschiedene Zugriffsmuster zu unterstützen. Die folgende Richtlinie erlaubt den Zugriff auf zwei verschiedene Datenbankkonten auf einem DB-Cluster.

JSON
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "rds-db:connect" ], "Resource": [ "arn:aws:rds-db:us-east-2:123456789012:dbuser:db-ABCDEFGHIJKL01234/jane_doe", "arn:aws:rds-db:us-east-2:123456789012:dbuser:db-ABCDEFGHIJKL01234/mary_roe" ] } ] }
JSON
{ "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 folgende Richtlinie verwendet das Zeichen „*“, um allen und Datenbankkonten für ein bestimmtes AWS Konto und eine bestimmte AWS Region zuzuordnen.

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

Die folgende Richtlinie entspricht allen für ein bestimmtes AWS Konto und eine bestimmte AWS Region. Allerdings gewährt die Richtlinie nur den Zugriff auf DB-Cluster, die über ein jane_doe-Datenbankkonto verfügen.

JSON
{ "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.