Beispiele für identitätsbasierte Richtlinien von Amazon Keyspaces - Amazon Keyspaces (für Apache Cassandra)

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.

Beispiele für identitätsbasierte Richtlinien von Amazon Keyspaces

Standardmäßig sind IAM Benutzer und Rollen nicht berechtigt, Amazon Keyspaces-Ressourcen zu erstellen oder zu ändern. Sie können auch keine Aufgaben mit der Konsole, CQLSH AWS CLI, oder AWS API ausführen. Ein IAM Administrator muss IAM Richtlinien erstellen, die Benutzern und Rollen die Erlaubnis gewähren, bestimmte API Operationen mit den angegebenen Ressourcen auszuführen, die sie benötigen. Der Administrator muss diese Richtlinien dann den IAM Benutzern oder Gruppen zuordnen, für die diese Berechtigungen erforderlich sind.

Informationen zum Erstellen einer IAM identitätsbasierten Richtlinie anhand dieser JSON Beispieldokumente finden Sie unter Richtlinien erstellen auf der JSON Registerkarte im IAMBenutzerhandbuch.

Bewährte Methoden für Richtlinien

Identitätsbasierte Richtlinien legen fest, ob jemand Amazon Keyspaces-Ressourcen in Ihrem Konto erstellen, darauf zugreifen oder diese löschen kann. Dies kann zusätzliche Kosten für Ihr verursachen AWS-Konto. Befolgen Sie beim Erstellen oder Bearbeiten identitätsbasierter Richtlinien die folgenden Anleitungen und Empfehlungen:

  • Beginnen Sie mit AWS verwalteten Richtlinien und wechseln Sie zu Berechtigungen mit den geringsten Rechten — Verwenden Sie die AWS verwalteten Richtlinien, die Berechtigungen für viele gängige Anwendungsfälle gewähren, um damit zu beginnen, Ihren Benutzern und Workloads Berechtigungen zu gewähren. Sie sind in Ihrem verfügbar. AWS-Konto Wir empfehlen Ihnen, die Berechtigungen weiter zu reduzieren, indem Sie vom AWS Kunden verwaltete Richtlinien definieren, die speziell auf Ihre Anwendungsfälle zugeschnitten sind. Weitere Informationen finden Sie AWS im IAMBenutzerhandbuch unter AWS Verwaltete Richtlinien oder Verwaltete Richtlinien für Jobfunktionen.

  • Berechtigungen mit den geringsten Rechten anwenden — Wenn Sie Berechtigungen mit IAM Richtlinien festlegen, gewähren Sie nur die Berechtigungen, die für die Ausführung einer Aufgabe erforderlich sind. Sie tun dies, indem Sie die Aktionen definieren, die für bestimmte Ressourcen unter bestimmten Bedingungen durchgeführt werden können, auch bekannt als die geringsten Berechtigungen. Weitere Informationen zur Verwendung IAM zum Anwenden von Berechtigungen finden Sie IAMim Benutzerhandbuch unter Richtlinien und Berechtigungen. IAM

  • Verwenden Sie Bedingungen in IAM Richtlinien, um den Zugriff weiter einzuschränken — Sie können Ihren Richtlinien eine Bedingung hinzufügen, um den Zugriff auf Aktionen und Ressourcen einzuschränken. Sie können beispielsweise eine Richtlinienbedingung schreiben, um anzugeben, dass alle Anfragen mit gesendet werden müssenSSL. Sie können auch Bedingungen verwenden, um Zugriff auf Serviceaktionen zu gewähren, wenn diese über einen bestimmten Zweck verwendet werden AWS -Service, z. AWS CloudFormation B. Weitere Informationen finden Sie im IAMBenutzerhandbuch unter IAMJSONRichtlinienelemente: Bedingung.

  • Verwenden Sie IAM Access Analyzer, um Ihre IAM Richtlinien zu validieren, um sichere und funktionale Berechtigungen zu gewährleisten. IAM Access Analyzer validiert neue und bestehende Richtlinien, sodass die Richtlinien der IAM Richtliniensprache (JSON) und den IAM bewährten Methoden entsprechen. IAMAccess Analyzer bietet mehr als 100 Richtlinienprüfungen und umsetzbare Empfehlungen, um Sie bei der Erstellung sicherer und funktionaler Richtlinien zu unterstützen. Weitere Informationen finden Sie unter IAMAccess Analyzer-Richtlinienvalidierung im IAMBenutzerhandbuch.

  • Multi-Faktor-Authentifizierung erforderlich (MFA) — Wenn Sie ein Szenario haben, in dem IAM Benutzer oder ein Root-Benutzer erforderlich sind AWS-Konto, aktivieren Sie die Option MFA für zusätzliche Sicherheit. Wenn Sie festlegen möchten, MFA wann API Operationen aufgerufen werden, fügen Sie MFA Bedingungen zu Ihren Richtlinien hinzu. Weitere Informationen finden Sie unter Konfiguration des MFA -geschützten API Zugriffs im IAMBenutzerhandbuch.

Weitere Informationen zu bewährten Methoden finden Sie unter Bewährte Sicherheitsmethoden IAM im IAM Benutzerhandbuch. IAM

Verwenden der Amazon Keyspaces-Konsole

Amazon Keyspaces benötigt keine speziellen Berechtigungen für den Zugriff auf die Amazon Keyspaces-Konsole. Sie benötigen mindestens Leseberechtigungen, um Details zu den Amazon Keyspaces-Ressourcen in Ihrem aufzulisten und anzuzeigen. AWS-Konto Wenn Sie eine identitätsbasierte Richtlinie erstellen, die restriktiver ist als die erforderlichen Mindestberechtigungen, funktioniert die Konsole für Entitäten (IAMBenutzer oder Rollen) mit dieser Richtlinie nicht wie vorgesehen.

Den Entitäten stehen zwei AWS verwaltete Richtlinien für den Zugriff auf die Amazon Keyspaces-Konsole zur Verfügung.

Weitere Informationen zu den verwalteten Richtlinien von Amazon Keyspaces finden Sie unterAWSverwaltete Richtlinien für Amazon Keyspaces.

Gewähren der Berechtigung zur Anzeige der eigenen Berechtigungen für Benutzer

Dieses Beispiel zeigt, wie Sie eine Richtlinie erstellen könnten, die es IAM Benutzern ermöglicht, die internen und verwalteten Richtlinien einzusehen, die mit ihrer Benutzeridentität verknüpft sind. Diese Richtlinie umfasst Berechtigungen zum Ausführen dieser Aktion auf der Konsole oder programmgesteuert mithilfe von oder. AWS CLI AWS API

{ "Version": "2012-10-17", "Statement": [ { "Sid": "ViewOwnUserInfo", "Effect": "Allow", "Action": [ "iam:GetUserPolicy", "iam:ListGroupsForUser", "iam:ListAttachedUserPolicies", "iam:ListUserPolicies", "iam:GetUser" ], "Resource": ["arn:aws:iam::*:user/${aws:username}"] }, { "Sid": "NavigateInConsole", "Effect": "Allow", "Action": [ "iam:GetGroupPolicy", "iam:GetPolicyVersion", "iam:GetPolicy", "iam:ListAttachedGroupPolicies", "iam:ListGroupPolicies", "iam:ListPolicyVersions", "iam:ListPolicies", "iam:ListUsers" ], "Resource": "*" } ] }

Zugreifen auf Amazon Keyspaces-Tabellen

Im Folgenden finden Sie eine Beispielrichtlinie, die nur Lesezugriff (SELECT) auf die Amazon Keyspaces-Systemtabellen gewährt. Ersetzen Sie für alle Beispiele die Region und die Konto-ID im Amazon-Ressourcennamen (ARN) durch Ihre eigenen.

Anmerkung

Um eine Verbindung mit einem Standardtreiber herzustellen, muss ein Benutzer mindestens SELECT Zugriff auf die Systemtabellen haben, da die meisten Treiber die Systemschlüsselbereiche/Tabellen bei der Verbindung lesen.

{ "Version":"2012-10-17", "Statement":[ { "Effect":"Allow", "Action":[ "cassandra:Select" ], "Resource":[ "arn:aws:cassandra:us-east-1:111122223333:/keyspace/system*" ] } ] }

Die folgende Beispielrichtlinie fügt schreibgeschützten Zugriff auf die Benutzertabelle im Schlüsselraum hinzu. mytable mykeyspace

{ "Version":"2012-10-17", "Statement":[ { "Effect":"Allow", "Action":[ "cassandra:Select" ], "Resource":[ "arn:aws:cassandra:us-east-1:111122223333:/keyspace/mykeyspace/table/mytable", "arn:aws:cassandra:us-east-1:111122223333:/keyspace/system*" ] } ] }

Die folgende Beispielrichtlinie weist Lese-/Schreibzugriff auf eine Benutzertabelle und Lesezugriff auf die Systemtabellen zu.

Anmerkung

Systemtabellen sind immer schreibgeschützt.

{ "Version":"2012-10-17", "Statement":[ { "Effect":"Allow", "Action":[ "cassandra:Select", "cassandra:Modify" ], "Resource":[ "arn:aws:cassandra:us-east-1:111122223333:/keyspace/mykeyspace/table/mytable", "arn:aws:cassandra:us-east-1:111122223333:/keyspace/system*" ] } ] }

Die folgende Beispielrichtlinie ermöglicht es einem Benutzer, Tabellen im Schlüsselraum zu erstellen. mykeyspace

{ "Version":"2012-10-17", "Statement":[ { "Effect":"Allow", "Action":[ "cassandra:Create", "cassandra:Select" ], "Resource":[ "arn:aws:cassandra:us-east-1:111122223333:/keyspace/mykeyspace/*", "arn:aws:cassandra:us-east-1:111122223333:/keyspace/system*" ] } ] }

Amazon Keyspaces-Ressourcenzugriff basierend auf Tags

Sie können Bedingungen in Ihrer identitätsbasierten Richtlinie verwenden, um den Zugriff auf Amazon Keyspaces-Ressourcen anhand von Tags zu steuern. Diese Richtlinien steuern die Sichtbarkeit der Schlüsselbereiche und Tabellen im Konto. Beachten Sie, dass sich tagbasierte Berechtigungen für Systemtabellen anders verhalten, wenn Anfragen über die AWS SDK Cassandra Query Language (CQL) API -Aufrufe über Cassandra-Treiber und Entwicklertools gestellt werden.

  • Der Aufrufer benötigt Lesezugriff auf Systemtabellen, um Anfragen mit dem stellen List und Get Ressourcen bereitstellen zu können, AWS SDK wenn der tagbasierte Zugriff verwendet wird. Zum Beispiel sind Select Aktionsberechtigungen erforderlich, um mithilfe der Operation Daten aus Systemtabellen zu lesen. GetTable Wenn der Aufrufer nur Tag-basierten Zugriff auf eine bestimmte Tabelle hat, schlägt ein Vorgang fehl, der zusätzlichen Zugriff auf eine Systemtabelle erfordert.

  • Aus Gründen der Kompatibilität mit dem gängigen Verhalten des Cassandra-Treibers werden tagbasierte Autorisierungsrichtlinien nicht durchgesetzt, wenn Operationen an Systemtabellen mithilfe von Cassandra Query Language (CQL) API -Aufrufen über Cassandra-Treiber und Entwicklertools ausgeführt werden.

Das folgende Beispiel zeigt, wie Sie eine Richtlinie erstellen können, die einem Benutzer Berechtigungen zum Anzeigen einer Tabelle gewährt, wenn die Tabelle den Wert des Benutzernamens dieses Benutzers Owner enthält. In diesem Beispiel gewähren Sie auch Lesezugriff auf die Systemtabellen.

{ "Version":"2012-10-17", "Statement":[ { "Sid":"ReadOnlyAccessTaggedTables", "Effect":"Allow", "Action":"cassandra:Select", "Resource":[ "arn:aws:cassandra:us-east-1:111122223333:/keyspace/mykeyspace/table/*", "arn:aws:cassandra:us-east-1:111122223333:/keyspace/system*" ], "Condition":{ "StringEquals":{ "aws:ResourceTag/Owner":"${aws:username}" } } } ] }

Sie können diese Richtlinie an die IAM Benutzer in Ihrem Konto anhängen. Wenn ein benannter Benutzer richard-roe versucht, eine Amazon Keyspaces-Tabelle aufzurufen, muss die Tabelle mit Owner=richard-roe oder owner=richard-roe gekennzeichnet sein. Andernfalls wird der Zugriff abgelehnt. Der Tag-Schlüssel Owner der Bedingung stimmt sowohl mit Owner als auch mit owner überein, da die Namen von Bedingungsschlüsseln nicht zwischen Groß- und Kleinschreibung unterscheiden. Weitere Informationen finden Sie unter IAMJSONRichtlinienelemente: Bedingung im IAMBenutzerhandbuch.

Die folgende Richtlinie gewährt einem Benutzer die Berechtigung, Tabellen mit Tags zu erstellen, wenn die Tabelle den Wert des Benutzernamens dieses Benutzers Owner enthält.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "CreateTagTableUser", "Effect": "Allow", "Action": [ "cassandra:Create", "cassandra:TagResource" ], "Resource": "arn:aws:cassandra:us-east-1:111122223333:/keyspace/mykeyspace/table/*", "Condition":{ "StringEquals":{ "aws:RequestTag/Owner":"${aws:username}" } } } ] }