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.
Übersicht zur Verwaltung der Zugriffsberechtigungen für Amazon-Redshift-Ressourcen
Jede AWS Ressource gehört einem AWS Konto, und die Berechtigungen zum Erstellen oder Zugreifen auf die Ressourcen werden durch Berechtigungsrichtlinien geregelt. Ein Kontoadministrator kann IAM Identitäten (d. h. Benutzern, Gruppen und Rollen) Berechtigungsrichtlinien zuordnen, und einige Dienste (z. B. AWS Lambda) unterstützen auch das Anhängen von Berechtigungsrichtlinien an Ressourcen.
Anmerkung
Ein Kontoadministrator (oder Administratorbenutzer) ist ein Benutzer mit Administratorrechten. Weitere Informationen finden Sie unter IAMBewährte Methoden im IAMBenutzerhandbuch.
Beim Erteilen von Berechtigungen entscheiden Sie, wer die Berechtigungen erhält, für welche Ressourcen die Berechtigungen gelten und welche Aktionen an diesen Ressourcen gestattet werden sollen.
Amazon-Redshift-Ressourcen und -Operationen
Amazon Redshift stellt servicespezifische Ressourcen, Aktionen und Bedingungskontextschlüssel zur Verwendung in IAM Berechtigungsrichtlinien bereit.
Zugriffsberechtigungen für Amazon Redshift, Amazon Redshift Serverless, Amazon Redshift Data API und Amazon Redshift Query Editor v2
Bei der Einrichtung schreiben Sie BerechtigungsrichtlinienZugriffskontrolle, die Sie einer IAM Identität zuordnen können (identitätsbasierte Richtlinien). Weitere Informationen finden Sie in den folgenden Themen in der Service-Authorization-Referenz:
-
Für Amazon Redshift siehe Aktionen, Ressourcen und Bedingungsschlüssel für Amazon Redshift, die das Präfix
redshift:
benutzen. -
Für Amazon Redshift Serverless siehe Aktionen, Ressourcen und Bedingungsschlüssel für Amazon Redshift Serverless, die das Präfix
redshift-serverless:
benutzen. -
Informationen zu Amazon Redshift Redshift-Daten API finden Sie unter Aktionen, Ressourcen und Bedingungsschlüssel für Amazon Redshift Redshift-Daten API, die das Präfix verwenden.
redshift-data:
-
Informationen zum Amazon Redshift-Abfrage-Editor v2 finden Sie unter Aktionen, Ressourcen und Bedingungsschlüssel für AWS SQL Workbench (Amazon Redshift Query Editor v2), die das Präfix verwenden.
sqlworkbench:
Der Abfrage-Editor v2 umfasst Aktionen, die nur für Berechtigungen bestimmt sind und nicht direkt einer Operation entsprechen. API Diese Aktionen sind in der Service-Authorization-Referenz mit „
[permission only]
“ angegeben.
Die Service Authorization Reference enthält Informationen darüber, welche API Operationen in einer Richtlinie verwendet werden können. IAM Sie enthält auch die AWS Ressource, für die Sie die Berechtigungen erteilen können, sowie Bedingungsschlüssel, die Sie für eine differenzierte Zugriffskontrolle angeben können. Weitere Informationen über Bedingungen finden Sie unter Verwendung von IAM Richtlinienbedingungen für eine differenzierte Zugriffskontrolle.
Sie geben die Aktionen im Feld Action
der Richtlinie, den Ressourcenwert im Feld Resource
der Richtlinie und die Bedingungen im Feld Condition
der Richtlinie an. Um eine Aktion für Amazon Redshift anzugeben, verwenden Sie das redshift:
Präfix gefolgt vom Namen des API Vorgangs (z. B.redshift:CreateCluster
).
Grundlegendes zum Eigentum an Ressourcen
Ein Ressourcenbesitzer ist das AWS Konto, das eine Ressource erstellt hat. Das heißt, der Ressourcenbesitzer ist das AWS Konto der Prinzipalentität (das Stammkonto, ein IAM Benutzer oder eine IAM Rolle), die die Anforderung authentifiziert, mit der die Ressource erstellt wird. Die Funktionsweise wird anhand der folgenden Beispiele deutlich:
-
Wenn Sie die Root-Kontoanmeldeinformationen Ihres AWS Kontos verwenden, um einen DB-Cluster zu erstellen, ist Ihr AWS Konto der Eigentümer der Amazon Redshift Redshift-Ressource.
-
Wenn Sie in Ihrem AWS Konto eine IAM Rolle mit Berechtigungen zum Erstellen von Amazon Redshift Redshift-Ressourcen erstellen, kann jeder, der die Rolle übernehmen kann, Amazon Redshift Redshift-Ressourcen erstellen. Ihr AWS -Konto, zu dem die Rolle gehört, ist der Inhaber der Amazon-Redshift-Ressourcen.
-
Wenn Sie in Ihrem AWS Konto einen IAM Benutzer erstellen und diesem Benutzer Berechtigungen zum Erstellen von Amazon Redshift Redshift-Ressourcen gewähren, kann der Benutzer Amazon Redshift Redshift-Ressourcen erstellen. Ihr AWS -Konto, dem der Benutzer angehört, ist jedoch der Inhaber der Amazon-Redshift-Ressourcen. In den meisten Fällen wird diese Methode nicht empfohlen. Wir empfehlen, eine IAM Rolle zu erstellen und der Rolle Berechtigungen zuzuweisen und die Rolle dann einem Benutzer zuzuweisen.
Verwalten des Zugriffs auf Ressourcen
Eine Berechtigungsrichtlinie beschreibt, wer Zugriff auf welche Objekte hat. Im folgenden Abschnitt werden die verfügbaren Optionen zum Erstellen von Berechtigungsrichtlinien erläutert.
Anmerkung
In diesem Abschnitt wird die Verwendung IAM im Kontext von Amazon Redshift beschrieben. Es enthält keine detaillierten Informationen über den IAM Service. Eine vollständige IAM Dokumentation finden Sie unter Was istIAM? im IAMBenutzerhandbuch. Informationen zur IAM Richtliniensyntax und zu Beschreibungen finden Sie in der AWS IAMRichtlinienreferenz im IAMBenutzerhandbuch.
Mit einer IAM Identität verknüpfte Richtlinien werden als identitätsbasierte Richtlinien (Richtlinien) bezeichnet, und IAM Richtlinien, die einer Ressource zugeordnet sind, werden als ressourcenbasierte Richtlinien bezeichnet. Amazon Redshift unterstützt nur identitätsbasierte Richtlinien (Richtlinien)IAM.
Identitätsbasierte Richtlinien (Richtlinien) IAM
Sie können Berechtigungen zuweisen, indem Sie einer Rolle Richtlinien zuordnen und diese IAM Rolle dann einem Benutzer oder einer Gruppe zuweisen. Nachfolgend sehen Sie ein Beispiel für eine Richtlinie mit Berechtigungen zum Erstellen, Löschen, Ändern und Neustarten von Amazon-Redshift-Clustern für Ihr AWS -Konto.
{ "Version": "2012-10-17", "Statement": [ { "Sid":"AllowManageClusters", "Effect":"Allow", "Action": [ "redshift:CreateCluster", "redshift:DeleteCluster", "redshift:ModifyCluster", "redshift:RebootCluster" ], "Resource":"*" } ] }
Weitere Informationen zur Verwendung identitätsbasierter Richtlinien mit Amazon Redshift finden Sie unter Verwendung identitätsbasierter Richtlinien (IAMRichtlinien) für Amazon Redshift. Weitere Informationen zu Benutzern, Gruppen, Rollen und Berechtigungen finden Sie im Benutzerhandbuch unter Identitäten (Benutzer, Gruppen und Rollen). IAM
Ressourcenbasierte Richtlinien
Andere Services, z. B. Amazon S3, unterstützen auch ressourcenbasierte Berechtigungsrichtlinien. Beispielsweise können Sie einem S3 Bucket eine Richtlinie zuweisen, um die Zugriffsberechtigungen für diesen Bucket zu verwalten. Amazon Redshift unterstützt keine ressourcenbasierten Richtlinien.
Angeben der Richtlinienelemente: Aktionen, Effekte, Ressourcen und Prinzipale
Für jede Amazon Redshift Redshift-Ressource (sieheAmazon-Redshift-Ressourcen und -Operationen) definiert der Service eine Reihe von API Vorgängen (siehe Aktionen). Um Berechtigungen für diese API Operationen zu gewähren, definiert Amazon Redshift eine Reihe von Aktionen, die Sie in einer Richtlinie angeben können. Für die Durchführung eines API Vorgangs können Berechtigungen für mehr als eine Aktion erforderlich sein.
Grundlegende Richtlinienelemente:
-
Ressource — In einer Richtlinie verwenden Sie einen Amazon-Ressourcennamen (ARN), um die Ressource zu identifizieren, für die die Richtlinie gilt. Weitere Informationen finden Sie unter Amazon-Redshift-Ressourcen und -Operationen.
-
Aktion – Mit Aktionsschlüsselwörtern geben Sie die Ressourcenoperationen an, die Sie zulassen oder verweigern möchten. Die
redshift:DescribeClusters
-Berechtigung erteilt dem Benutzer zum Beispiel Berechtigungen zum Durchführen des Amazon-Redshift-DescribeClusters
-Vorgangs. -
Auswirkung – Die von Ihnen festgelegte Auswirkung, wenn der Benutzer die jeweilige Aktion anfordert – entweder „allow“ (Zugriffserlaubnis) oder „deny“ (Zugriffsverweigerung). Wenn Sie den Zugriff auf eine Ressource nicht ausdrücklich gestatten ("Allow"), wird er automatisch verweigert. Sie können den Zugriff auf eine Ressource auch explizit verweigern. So können Sie sicherstellen, dass Benutzer nicht darauf zugreifen können, auch wenn der Zugriff durch eine andere Richtlinie gestattet wird.
-
Principal — In identitätsbasierten Richtlinien (IAMRichtlinien) ist der Benutzer, dem die Richtlinie zugeordnet ist, der implizite Prinzipal. In ressourcenbasierten Richtlinien müssen Sie den Benutzer, das Konto, den Service oder die sonstige Entität angeben, die die Berechtigungen erhalten soll (gilt nur für ressourcenbasierte Richtlinien). Amazon Redshift unterstützt keine ressourcenbasierten Richtlinien.
Weitere Informationen zur IAM Richtliniensyntax und zu deren Beschreibung finden Sie in der AWS IAMRichtlinienreferenz im IAM Benutzerhandbuch.
Eine Tabelle mit allen Amazon Redshift API Redshift-Aktionen und den Ressourcen, für die sie gelten, finden Sie unterZugriffsberechtigungen für Amazon Redshift, Amazon Redshift Serverless, Amazon Redshift Data API und Amazon Redshift Query Editor v2.
Angeben von Bedingungen in einer Richtlinie
Beim Erteilen von Berechtigungen können Sie mithilfe der Sprache der Zugriffsrichtlinie die Bedingungen angeben, wann die Richtlinie wirksam werden soll. Beispielsweise kann festgelegt werden, dass eine Richtlinie erst ab einem bestimmten Datum gilt. Weitere Informationen zur Angabe von Bedingungen in einer Sprache für die Zugriffsrichtlinie finden Sie unter IAMJSONRichtlinienelemente: Bedingung im IAMBenutzerhandbuch.
Um herauszufinden, unter welchen Bedingungen eine Berechtigungsrichtlinie gilt, nehmen Sie ein Condition
Element in Ihre IAM Berechtigungsrichtlinie auf. Sie können beispielsweise eine Richtlinie erstellen, die einem Benutzer erlaubt, einen Cluster mit der Aktion redshift:CreateCluster
zu erstellen, und Sie können ein Condition
-Element hinzufügen, um die Einschränkung zu machen, dass dieser Benutzer den Cluster nur in einer bestimmten Region erstellen kann. Details hierzu finden Sie unter Verwendung von IAM Richtlinienbedingungen für eine differenzierte Zugriffskontrolle. Eine Liste mit allen Bedingungsschlüsselwerten sowie den Amazon-Redshift-Aktionen und -Ressourcen, für die sie gelten, finden Sie unter Zugriffsberechtigungen für Amazon Redshift, Amazon Redshift Serverless, Amazon Redshift Data API und Amazon Redshift Query Editor v2.
Verwendung von IAM Richtlinienbedingungen für eine differenzierte Zugriffskontrolle
In Amazon Redshift können Sie Bedingungsschlüssel verwenden, um den Zugriff auf Ressourcen basierend auf den Tags dieser Ressourcen einzuschränken. Die folgenden Elemente sind gängige Amazon-Redshift-Bedingungsschlüssel.
Bedingungsschlüssel | Beschreibung |
---|---|
|
Erfordert, dass Benutzer einen Tag-Schlüssel (Name) und einen Wert angeben, wenn sie eine Ressource erstellen. Weitere Informationen finden Sie unter aws: RequestTag im IAMBenutzerhandbuch. |
|
Beschränkt den Benutzerzugriff auf Ressourcen auf der Grundlage bestimmter Tag-Schlüssel und Werte. Weitere Informationen finden Sie unter aws: ResourceTag im IAMBenutzerhandbuch. |
|
Verwenden Sie diesen Schlüssel, um die Tag-Schlüssel in einer Anforderung mit den Schlüsseln zu vergleichen, die Sie in der Richtlinie angeben. Weitere Informationen finden Sie unter aws: TagKeys im IAMBenutzerhandbuch. |
Weitere Informationen zu Tags finden Sie unter Tag-Ressourcen in Amazon Redshift.
Eine Liste der API Aktionen, die die Tasten redshift:RequestTag
und redshift:ResourceTag
Condition unterstützen, finden Sie unterZugriffsberechtigungen für Amazon Redshift, Amazon Redshift Serverless, Amazon Redshift Data API und Amazon Redshift Query Editor v2.
Die folgenden Bedingungsschlüssel können mit der Amazon Redshift GetClusterCredentials Redshift-Aktion verwendet werden.
Bedingungsschlüssel | Beschreibung |
---|---|
|
Begrenzt die Anzahl der Sekunden, die für die Dauer angegeben werden können. |
|
Schränkt ein, welche Datenbanknamen angegeben werden können. |
|
Schränkt ein, welche Datenbankbenutzernamen angegeben werden können. |
Beispiel 1: Beschränkung des Zugriffs mithilfe des Bedingungsschlüssels aws: ResourceTag
Verwenden Sie die folgende IAM Richtlinie, damit ein Benutzer einen Amazon Redshift Redshift-Cluster nur für ein bestimmtes AWS Konto in der us-west-2
Region ändern kann, dessen Tag mit dem Tag-Wert von test
benannt environment
ist.
{ "Version": "2012-10-17", "Statement": { "Sid":"AllowModifyTestCluster", "Effect": "Allow", "Action": "redshift:ModifyCluster", "Resource": "arn:aws:redshift:us-west-2:123456789012:cluster:*", "Condition": { "StringEquals": { "aws:ResourceTag/environment": "test" } } } }
Beispiel 2: Beschränken des Zugriffs mithilfe des Bedingungsschlüssels aws: RequestTag
Verwenden Sie die folgende IAM Richtlinie, damit ein Benutzer nur dann einen Amazon Redshift Redshift-Cluster erstellen kann, wenn der Befehl zum Erstellen des Clusters ein Tag mit dem Namen usage
und den Tag-Wert von production
enthält. Die Bedingung mit aws:TagKeys
und der ForAllValues
-Modifikator geben an, dass nur die Schlüssel costcenter
und usage
in der Anforderung angegeben werden können.
{ "Version": "2012-10-17", "Statement": { "Sid":"AllowCreateProductionCluster", "Effect": "Allow", "Action": [ "redshift:CreateCluster", "redshift:CreateTags" ], "Resource": "*", "Condition": { "StringEquals": { "aws:RequestTag/usage": "production" }, "ForAllValues:StringEquals": { "aws:TagKeys": [ "costcenter", "usage" ] } } } }