Authentifizierung und Autorisierung für Aurora DSQL - Amazon Aurora DSQL

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.

Authentifizierung und Autorisierung für Aurora DSQL

Aurora DSQL verwendet IAM-Rollen und -Richtlinien für die Cluster-Autorisierung. Sie ordnen IAM-Rollen PostgreSQL-Datenbankrollen für die Datenbankautorisierung zu. Dieser Ansatz kombiniert die Vorteile von IAM mit PostgreSQL-Berechtigungen. Aurora DSQL verwendet diese Features, um eine umfassende Autorisierungs- und Zugriffsrichtlinie für Ihren Cluster, Ihre Datenbank und Ihre Daten bereitzustellen.

Verwalten Ihres Clusters mithilfe von IAM

Zur Verwaltung Ihres Clusters verwenden Sie IAM für die Authentifizierung und Autorisierung:

IAM-Authentifizierung

Zur Authentifizierung Ihrer IAM-Identität bei der Verwaltung von Aurora DSQL-Clustern müssen Sie IAM verwenden. Sie können sich über die AWS-Managementkonsole, über AWS CLI oder über AWS SDK authentifizieren.

IAM-Autorisierung

Um Aurora DSQL-Cluster zu verwalten, gewähren Sie die Autorisierung mithilfe von IAM-Aktionen für Aurora DSQL. Um beispielsweise einen Cluster zu beschreiben, stellen Sie sicher, dass Ihre IAM-Identität über Berechtigungen für die IAM-Aktion dsql:GetCluster wie in der folgenden Beispiel-Richtlinienaktion dargestellt verfügt.

{ "Effect": "Allow", "Action": "dsql:GetCluster", "Resource": "arn:aws:dsql:us-east-1:123456789012:cluster/my-cluster" }

Weitere Informationen finden Sie unter Verwenden von IAM-Richtlinienaktionen zur Clusterverwaltung.

Verbindungsaufbau mit Ihrem Cluster mithilfe von IAM

Um eine Verbindung zu Ihrem Cluster herzustellen, verwenden Sie IAM für die Authentifizierung und Autorisierung:

IAM-Authentifizierung

Generieren Sie ein temporäres Authentifizierungstoken mithilfe einer IAM-Identität mit der Autorisierung, eine Verbindung zu Ihrem Cluster herzustellen. Weitere Informationen hierzu finden Sie unter Generieren eines Authentifizierungstokens in Amazon Aurora DSQL.

IAM-Autorisierung

Gewähren Sie der IAM-Identität, mit der Sie die Verbindung zum Endpunkt Ihres Clusters herstellen, die Erlaubnis für folgende IAM-Richtlinienaktionen:

  • Verwenden Sie dsql:DbConnectAdmin, wenn Sie die admin-Rolle verwenden. Aurora DSQL erstellt und verwaltet diese Rolle für Sie. Das folgende Beispiel für eine IAM-Richtlinienaktion ermöglicht das Herstellen admin einer Verbindung zumy-cluster.

    { "Effect": "Allow", "Action": "dsql:DbConnectAdmin", "Resource": "arn:aws:dsql:us-east-1:123456789012:cluster/my-cluster" }
  • Verwenden Sie dsql:DbConnect, wenn Sie eine benutzerdefinierte Datenbankrolle verwenden. Diese Rolle erstellen und verwalten Sie mithilfe von SQL-Befehlen in Ihrer Datenbank. Mit der folgenden IAM-Richtlinienaktion kann eine benutzerdefinierte Datenbankrolle bis zu einer Stunde my-cluster lang eine Verbindung herstellen.

    { "Effect": "Allow", "Action": "dsql:DbConnect", "Resource": "arn:aws:dsql:us-east-1:123456789012:cluster/my-cluster" }

Nachdem Sie eine Verbindung hergestellt haben, bleibt Ihre Rolle bis zu einer Stunde lang für die Verbindung autorisiert.

Interaktionen mit Ihrer Datenbank mithilfe von PostgreSQL-Datenbankrollen und IAM-Rollen

PostgreSQL verwendet das Rollenkonzept zur Verwaltung von Datenbankzugriffsberechtigungen. Eine Rolle kann entweder als Datenbankbenutzer oder als Gruppe von Datenbankbenutzern betrachtet werden, je nachdem, wie die Rolle eingerichtet ist. PostgreSQL-Rollen werden mithilfe von SQL-Befehlen erstellt. Um die Autorisierung auf Datenbankebene zu verwalten, gewähren Sie Ihren PostgreSQL-Datenbankrollen entsprechende PostgreSQL-Berechtigungen.

Aurora DSQL unterstützt zwei Arten von Datenbankrollen: eine admin-Rolle und benutzerdefinierte Rollen. Aurora DSQL erstellt Ihnen automatisch eine vordefinierte admin-Rolle in Ihrem Aurora DSQL-Cluster. Diese admin-Rolle kann nicht modifiziert werden. Wenn Sie als admin eine Verbindung zu Ihrer Datenbank herstellen, können Sie SQL ausgeben, um neue Rollen auf Datenbankebene zu erstellen, die Sie Ihren IAM-Rollen zuordnen. Damit IAM-Rollen eine Verbindung zu Ihrer Datenbank herstellen können, müssen Sie Ihre benutzerdefinierten Datenbankrollen Ihren IAM-Rollen zuordnen.

Authentifizierung

Stellen Sie mit der admin-Rolle eine Verbindung mit Ihrem Cluster her. Nachdem Sie Ihre Datenbank verbunden haben, verwenden Sie den Befehl AWS IAM GRANT, um eine benutzerdefinierte Datenbankrolle mit der IAM-Identität zu verknüpfen, die berechtigt ist, sich mit dem Cluster zu verbinden – wie im folgenden Beispiel gezeigt.

AWS IAM GRANT custom-db-role TO 'arn:aws:iam::account-id:role/iam-role-name';

Weitere Informationen hierzu finden Sie unter Autorisieren von Datenbankrollen für die Verbindungsherstellung zu Ihrem Cluster.

Autorisierung

Stellen Sie mit der admin-Rolle eine Verbindung mit Ihrem Cluster her. Führen Sie SQL-Befehle aus, um benutzerdefinierte Datenbankrollen einzurichten und Berechtigungen zu gewähren. Weitere Informationen finden Sie in der PostgreSQL-Dokumentation unter PostgreSQL-Datenbankrollen und PostgreSQL-Berechtigungen.

IAM-Richtlinienaktionen in Aurora DSQL verwenden

Welche IAM-Richtlinienaktion Sie verwenden, hängt von der Rolle ab, die Sie für die Verbindung mit Ihrem Cluster nutzen: entweder admin oder eine benutzerdefinierte Datenbankrolle. Die Richtlinie hängt auch von den IAM-Aktionen ab, die für diese Rolle erforderlich sind.

Verwenden von IAM-Richtlinienaktionen zur Verbindung mit Clustern

Wenn Sie mit der Standard-Datenbankrolle admin eine Verbindung zu Ihrem Cluster herstellen, verwenden Sie eine IAM-Identität, die autorisiert ist, die folgende IAM-Richtlinienaktion auszuführen.

"dsql:DbConnectAdmin"

Wenn Sie mit einer benutzerdefinierten Datenbankrolle eine Verbindung zu Ihrem Cluster herstellen, müssen Sie zuerst die IAM-Rolle der Datenbankrolle zuordnen. Die IAM-Identität, die Sie für die Verbindung mit Ihrem Cluster verwenden, muss über eine entsprechende Autorisierung verfügen, um die folgende IAM-Richtlinienaktion auszuführen.

"dsql:DbConnect"

Weitere Informationen zu benutzerdefinierten Datenbankrollen finden Sie unter Verwenden von Datenbankrollen und IAM-Authentifizierung.

Verwenden von IAM-Richtlinienaktionen zur Clusterverwaltung

Bei der Verwaltung Ihrer Aurora DSQL-Clustern geben Sie nur Richtlinienaktionen für die Aktionen an, die Ihre Rolle ausführen muss. Wenn Ihre Rolle beispielsweise nur Clusterinformationen abrufen muss, können Sie die Rollenberechtigungen wie in der folgenden Beispielrichtlinie auf die Berechtigungen ListClusters und GetCluster beschränken.

JSON
{ "Version":"2012-10-17", "Statement" : [ { "Effect" : "Allow", "Action" : [ "dsql:GetCluster", "dsql:ListClusters" ], "Resource": "arn:aws:dsql:us-east-1:123456789012:cluster/my-cluster" } ] }

Die folgende Beispielrichtlinie zeigt alle verfügbaren IAM-Richtlinienaktionen für die Clusterverwaltung.

JSON
{ "Version":"2012-10-17", "Statement" : [ { "Effect" : "Allow", "Action" : [ "dsql:CreateCluster", "dsql:GetCluster", "dsql:UpdateCluster", "dsql:DeleteCluster", "dsql:ListClusters", "dsql:TagResource", "dsql:ListTagsForResource", "dsql:UntagResource" ], "Resource" : "*" } ] }

Widerrufen der Autorisierung mithilfe von IAM und PostgreSQL

Sie können Ihren IAM-Rollen die Zugriffsberechtigungen für Ihre Rollen auf Datenbankebene entziehen:

Widerrufen der Administratorautorisierung für die Verbindung zu Clustern

Wenn Sie den Zugriff der IAM-Identität auf dsql:DbConnectAdmin widerrufen, wird der admin-Rolle die Autorisierung für die Verbindung mit Ihrem Cluster entzogen. Bearbeiten Sie entweder die IAM-Richtlinie oder lösen Sie die Richtlinie von der Identität.

Nachdem die Verbindungsautorisierung für die IAM-Identität widerrufen wurde, lehnt Aurora DSQL alle neuen Verbindungsversuche von dieser IAM-Identität ab. Alle aktiven Verbindungen, die die IAM-Identität verwenden, bleiben möglicherweise für die Dauer der Verbindung autorisiert. Weitere Informationen zur Dauer von Verbindungen finden Sie unter Kontingente und -Einschränkungen.

Autorisierungwiderruf für benutzerdefinierte Rollen zum Herstellen einer Verbindung zu Clustern

Um den Zugriff auf Datenbankrollen außer der Rolle admin zu widerrufen, entziehen Sie der IAM-Identität den Zugriff auf dsql:DbConnect. Bearbeiten Sie entweder die IAM-Richtlinie oder lösen Sie die Richtlinie von der Identität.

Sie können die Verknüpfung zwischen der Datenbankrolle und IAM auch entfernen, indem Sie den Befehl AWS IAM REVOKE in Ihrer Datenbank ausführen. Weitere Informationen zum Zugriffswiderruf für Datenbankrollen finden Sie unter Widerrufen der Datenbankautorisierung einer IAM-Rolle.

Die Berechtigungen der vordefinierten admin-Datenbankrolle können nicht verwaltet werden. Informationen zur Berechtigungsverwaltung von benutzerdefinierten Datenbankrollen finden Sie unter PostgreSQL-Berechtigungen. Änderungen an den Rechten werden bei der nächsten Transaktion wirksam, nachdem Aurora DSQL die Änderungstransaktion erfolgreich festgeschrieben hat.