Schritt 3: Fügen Sie eine Richtlinie an Benutzer an, die auf AWS Glue zugreifen - AWS Glue

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.

Schritt 3: Fügen Sie eine Richtlinie an Benutzer an, die auf AWS Glue zugreifen

Der Administrator muss allen Benutzern, Gruppen oder Rollen mithilfe der AWS Glue-Konsole oder AWS Command Line Interface (AWS CLI) Berechtigungen zuweisen. Sie stellen diese Berechtigungen bereit, indem Sie AWS Identity and Access Management (IAM) durch Richtlinien verwenden. Dieser Schritt beschreibt die Zuweisung von Berechtigungen an Benutzer oder Gruppen.

Wenn Sie diesen Schritt abgeschlossen haben, sind Ihrem Benutzer oder Ihrer Gruppe die folgenden Richtlinien angefügt:

  • Die von AWS verwalteten Richtlinie AWSGlueConsoleFullAccess oder die benutzerdefinierte Richtlinie GlueConsoleAccessPolicy

  • AWSGlueConsoleSageMakerNotebookFullAccess

  • CloudWatchLogsReadOnlyAccess

  • AWSCloudFormationReadOnlyAccess

  • AmazonAthenaFullAccess

So fügen Sie eine Inlinerichtlinie an und betten sie in einen Benutzer oder eine Gruppe ein

Sie können eine von AWS verwaltete Richtlinie oder eine Inlinerichtlinie einem Benutzer oder einer Gruppe für den Zugriff auf die AWS Glue-Konsole anfügen. Einige der in dieser Richtlinie angegebenen Ressourcen beziehen sich auf Standardnamen, die von AWS Glue für Amazon-S3-Buckets, Amazon-S3-ETL-Skripte, CloudWatch Logs, AWS CloudFormation und Amazon-EC2-Ressourcen verwendet werden. Der Einfachheit halber schreibt AWS Glue einige Amazon-S3-Objekte in Buckets in Ihrem Konto mit dem Standardpräfix aws-glue-*.

Anmerkung

Sie können diesen Schritt überspringen, wenn Sie die von AWS verwaltete Richtlinie AWSGlueConsoleFullAccess verwenden.

Wichtig

AWS Glue benötigt die Berechtigung zum Annehmen einer Rolle, die verwendet wird, um in Ihrem Namen Aufgaben zu erledigen. Zu diesem Zweck fügen Sie Ihren AWS Glue-Benutzern oder -Gruppen die iam:PassRole-Berechtigungen hinzu. Diese Richtlinie erteilt eine Berechtigung für Rollen, die mit AWSGlueServiceRole für AWS Glue-Servicerollen beginnen und AWSGlueServiceNotebookRole für Rollen, die beim Erstellen eines Notebook-Servers erforderlich sind. Sie können auch eine eigene Richtlinie für iam:PassRole-Berechtigungen erstellen, die Ihrer Benennungskonvention entsprechen.

Im Sinne der Sicherheit hat es sich bewährt, den Zugriff auf Amazon-S3-Bucket- und Amazon CloudWatch-Protokoll-Gruppen durch strengere Richtlinien einzuschränken. Eine Amazon-S3-Beispielrichtlinie finden Sie unter Schreiben von IAM-Richtlinien: So gewähren Sie Zugriff auf einen Amazon-S3-Bucket.

In diesem Schritt erstellen Sie eine ähnliche Richtlinie wie AWSGlueConsoleFullAccess. Die aktuelle Version von AWSGlueConsoleFullAccess finden Sie in der IAM-Konsole.

  1. Melden Sie sich bei der AWS Management Console an und öffnen Sie die IAM-Konsole unter https://console.aws.amazon.com/iam/.

  2. Wählen Sie im Navigationsbereich Benutzer oder Benutzergruppen.

  3. Wählen Sie in der Liste den Namen des Benutzers oder der Gruppe, in die eine Richtlinie eingebettet werden soll.

  4. Wählen Sie die Registerkarte Permissions (Berechtigungen) aus und erweitern Sie ggf. den Abschnitt Permissions policies (Berechtigungsrichtlinien).

  5. Wählen Sie den Link Add Inline policy (Inlinerichtlinie hinzufügen) aus.

  6. Navigieren Sie auf dem Bildschirm Create Policy (Richtlinie erstellen) zu einer Registerkarte, um JSON zu bearbeiten. Erstellen Sie ein Richtliniendokument mit den folgenden JSON-Anweisungen und wählen Sie dann Review Policy (Richtlinie überprüfen) aus.

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "glue:*", "redshift:DescribeClusters", "redshift:DescribeClusterSubnetGroups", "iam:ListRoles", "iam:ListUsers", "iam:ListGroups", "iam:ListRolePolicies", "iam:GetRole", "iam:GetRolePolicy", "iam:ListAttachedRolePolicies", "ec2:DescribeSecurityGroups", "ec2:DescribeSubnets", "ec2:DescribeVpcs", "ec2:DescribeVpcEndpoints", "ec2:DescribeRouteTables", "ec2:DescribeVpcAttribute", "ec2:DescribeKeyPairs", "ec2:DescribeInstances", "rds:DescribeDBInstances", "rds:DescribeDBClusters", "rds:DescribeDBSubnetGroups", "s3:ListAllMyBuckets", "s3:ListBucket", "s3:GetBucketAcl", "s3:GetBucketLocation", "cloudformation:DescribeStacks", "cloudformation:GetTemplateSummary", "dynamodb:ListTables", "kms:ListAliases", "kms:DescribeKey", "cloudwatch:GetMetricData", "cloudwatch:ListDashboards" ], "Resource": [ "*" ] }, { "Effect": "Allow", "Action": [ "s3:GetObject", "s3:PutObject" ], "Resource": [ "arn:aws:s3:::*/*aws-glue-*/*", "arn:aws:s3:::aws-glue-*" ] }, { "Effect": "Allow", "Action": [ "tag:GetResources" ], "Resource": [ "*" ] }, { "Effect": "Allow", "Action": [ "s3:CreateBucket", "s3:PutBucketPublicAccessBlock" ], "Resource": [ "arn:aws:s3:::aws-glue-*" ] }, { "Effect": "Allow", "Action": [ "logs:GetLogEvents" ], "Resource": [ "arn:aws:logs:*:*:/aws-glue/*" ] }, { "Effect": "Allow", "Action": [ "cloudformation:CreateStack", "cloudformation:DeleteStack" ], "Resource": "arn:aws:cloudformation:*:*:stack/aws-glue*/*" }, { "Effect": "Allow", "Action": [ "ec2:RunInstances" ], "Resource": [ "arn:aws:ec2:*:*:instance/*", "arn:aws:ec2:*:*:key-pair/*", "arn:aws:ec2:*:*:image/*", "arn:aws:ec2:*:*:security-group/*", "arn:aws:ec2:*:*:network-interface/*", "arn:aws:ec2:*:*:subnet/*", "arn:aws:ec2:*:*:volume/*" ] }, { "Action": [ "iam:PassRole" ], "Effect": "Allow", "Resource": "arn:aws:iam::*:role/AWSGlueServiceRole*", "Condition": { "StringLike": { "iam:PassedToService": [ "glue.amazonaws.com" ] } } }, { "Action": [ "iam:PassRole" ], "Effect": "Allow", "Resource": "arn:aws:iam::*:role/AWSGlueServiceNotebookRole*", "Condition": { "StringLike": { "iam:PassedToService": [ "ec2.amazonaws.com" ] } } }, { "Action": [ "iam:PassRole" ], "Effect": "Allow", "Resource": [ "arn:aws:iam::*:role/service-role/AWSGlueServiceRole*" ], "Condition": { "StringLike": { "iam:PassedToService": [ "glue.amazonaws.com" ] } } } ] }

    Die folgende Tabelle beschreibt die Berechtigungen, die von dieser Richtlinie erteilt werden.

    Action (Aktion) Resource Beschreibung

    "glue:*"

    "*"

    Gewährt die Berechtigung zum Ausführen aller AWS Glue-API-Operationen.

    Wenn Sie zuvor Ihre Richtlinien ohne die "glue:*"-Aktion erstellt haben, müssen Sie die folgenden einzelnen Berechtigungen zu Ihrer Richtlinie hinzufügen:

    • "glue:ListCrawlers"

    • "glue:BatchGetCrawlers"

    • "glue:ListTriggers"

    • "glue:BatchGetTriggers"

    • "glue:ListDevEndpoints"

    • "glue:BatchGetDevEndpoints"

    • "glue:ListJobs"

    • "glue:BatchGetJobs"

    "redshift:DescribeClusters", "redshift:DescribeClusterSubnetGroups"

    "*"

    Ermöglicht das Erstellen von Verbindungen mit Amazon Redshift.

    "iam:ListRoles", "iam:ListRolePolicies", "iam:GetRole", "iam:GetRolePolicy", "iam:ListAttachedRolePolicies"

    "*"

    Ermöglicht die Auflistung von IAM-Rollen beim Arbeiten mit Crawlern, Aufträgen, Entwicklungsendpunkten und Notebook-Servern.

    "ec2:DescribeSecurityGroups", "ec2:DescribeSubnets", "ec2:DescribeVpcs", "ec2:DescribeVpcEndpoints", "ec2:DescribeRouteTables", "ec2:DescribeVpcAttribute", "ec2:DescribeKeyPairs", "ec2:DescribeInstances"

    "*"

    Ermöglicht die Einrichtung von Amazon-EC2-Netzwerkelementen wie VPCs beim Ausführen von Aufträgen, Crawlern und Entwicklungsendpunkten.

    "rds:DescribeDBInstances"

    "*"

    Ermöglicht das Erstellen von Verbindungen mit Amazon RDS.

    "s3:ListAllMyBuckets", "s3:ListBucket", "s3:GetBucketAcl", "s3:GetBucketLocation"

    "*"

    Ermöglicht die Auflistung von Amazon-S3-Buckets beim Arbeiten mit Crawlern, Aufträgen, Entwicklungsendpunkten und Notebook-Servern.

    "dynamodb:ListTables"

    "*"

    Ermöglicht die Auflistung von DynamoDB-Tabellen.

    "kms:ListAliases", "kms:DescribeKey"

    "*"

    Ermöglicht die Arbeit mit KMS-Schlüsseln.

    "cloudwatch:GetMetricData", "cloudwatch:ListDashboards"

    "*"

    Ermöglicht die Arbeit mit CloudWatch-Metriken.

    "s3:GetObject", "s3:PutObject"

    "arn:aws:s3::: aws-glue-*/*", "arn:aws:s3::: */*aws-glue-*/*", "arn:aws:s3::: aws-glue-*"

    Erlaubt das Abrufen und Speichern von Amazon-S3-Objekten in Ihrem Konto beim Speichern von Objekten wie ETL-Skripts und Notebook-Server-Standorten.

    Namenskonvention: Erteilt Berechtigungen für Amazon-S3-Buckets oder Ordner, deren Namen das Präfix aws-glue- enthalten.

    "tag:GetResources"

    "*"

    Ermöglicht das Abrufen von AWS-Tags.

    "s3:CreateBucket", "s3:PutBucketPublicAccessBlock"

    "arn:aws:s3::: aws-glue-*"

    Erlaubt das Erstellen eines Amazon-S3-Buckets in Ihrem Konto beim Speichern von Objekten wie ETL-Skripts und Notebook-Server-Standorten.

    Namenskonvention: Erteilt Berechtigungen für Amazon-S3-Buckets, deren Namen das Präfix aws-glue- enthalten.

    Ermöglicht AWS Glue die Erstellung von Buckets, die den öffentlichen Zugriff blockieren.

    "logs:GetLogEvents"

    "arn:aws:logs:*:*: /aws-glue/*"

    Ermöglicht das Abrufen von CloudWatch Logs.

    Namenskonvention: AWS Glue schreibt Protokolle in Protokollgruppen, deren Namen mit aws-glue- beginnen.

    "cloudformation:CreateStack", "cloudformation:DeleteStack"

    "arn:aws:cloudformation:*:*:stack/ aws-glue*/*"

    Ermöglicht das Verwalten von AWS CloudFormation-Stacks bei der Arbeit mit Notebook-Servern.

    Namenskonvention: AWS Glue erstellt Stacks, deren Namen mit aws-glue beginnen.

    "ec2:RunInstances"

    "arn:aws:ec2:*:*:instance/*", "arn:aws:ec2:*:*:key-pair/*", "arn:aws:ec2:*:*:image/*", "arn:aws:ec2:*:*:security-group/*", "arn:aws:ec2:*:*:network-interface/*", "arn:aws:ec2:*:*:subnet/*", "arn:aws:ec2:*:*:volume/*"

    Ermöglicht die Ausführung von Entwicklungsendpunkten und Notebook-Servern.

    "iam:PassRole"

    "arn:aws:iam::*:role/ AWSGlueServiceRole*"

    Ermöglicht AWS Glue die Übernahme der PassRole-Berechtigung für Rollen, die mit AWSGlueServiceRole beginnen.

    "iam:PassRole"

    "arn:aws:iam::*:role/ AWSGlueServiceNotebookRole*"

    Ermöglicht Amazon EC2 die Übernahme der PassRole-Berechtigung für Rollen, die mit AWSGlueServiceNotebookRole beginnen.

    "iam:PassRole"

    "arn:aws:iam::*:role/service-role/ AWSGlueServiceRole*"

    Ermöglicht AWS Glue die Übernahme der PassRole-Berechtigung für Rollen, die mit service-role/AWSGlueServiceRole beginnen.

  7. Geben Sie auf dem Bildschirm Review Policy (Richtlinie überprüfen) einen Namen für die Richtlinie ein, z. B. GlueConsoleAccessPolicy. Wenn Sie mit der Richtlinie zufrieden sind, klicken Sie auf Create policy (Richtlinie erstellen). Stellen Sie sicher, dass in dem roten Feld am oberen Bildschirmrand keine Fehler angezeigt werden. Korrigieren Sie etwaige Fehler.

    Anmerkung

    Bei ausgewählter Option Use autoformatting wird die Richtlinie neu formatiert, wenn Sie sie öffnen oder die Option Validate Policy auswählen.

So fügen Sie eine verwaltete AWSGlueConsoleFullAccess-Richtlinie an

Sie können die Richtlinie AWSGlueConsoleFullAccess anfügen, um Berechtigungen zu erteilen, die vom AWS Glue-Konsolenbenutzer benötigt werden.

Anmerkung

Sie können diesen Schritt überspringen, wenn Sie Ihre eigene Richtlinie für den AWS Glue-Konsolenzugriff erstellt haben.

  1. Melden Sie sich bei der AWS Management Console an und öffnen Sie die IAM-Konsole unter https://console.aws.amazon.com/iam/.

  2. Wählen Sie im Navigationsbereich Policies.

  3. Aktivieren Sie in der Liste der Richtlinien das Kontrollkästchen neben AWSGlueConsoleFullAccess. Über das Menü Filter und das Suchfeld können Sie die Richtlinienliste filtern.

  4. Klicken Sie auf Policy actions und anschließend auf Attach.

  5. Wählen Sie den Benutzer aus, an den Sie die Richtlinie anfügen möchten. Über das Menü Filter und das Suchfeld können Sie die Liste der Prinzipal-Entitäten filtern. Nachdem Sie den Benutzer zum Anfügen der Richtlinie ausgewählt haben, klicken Sie auf Attach Policy (Richtlinie anfügen).

Die von AWSGlueConsoleSageMakerNotebookFullAccess verwaltete Richtlinie anfügen

Sie können die Richtlinie AWSGlueConsoleSageMakerNotebookFullAccess an einen Benutzer anfügen, um SageMaker-Notebooks, die auf der AWS Glue-Konsole erstellt wurden, zu verwalten. Zusätzlich zu den anderen erforderlichen AWS Glue-Konsolenberechtigungen gewährt diese Richtlinie Zugriff auf Ressourcen, die für die Verwaltung von SageMaker-Notizbüchern erforderlich sind.

  1. Melden Sie sich bei der AWS Management Console an und öffnen Sie die IAM-Konsole unter https://console.aws.amazon.com/iam/.

  2. Wählen Sie im Navigationsbereich Policies.

  3. Aktivieren Sie in der Liste der Richtlinien das Kontrollkästchen neben AWSGlueConsoleSageMakerNotebookFullAccess. Über das Menü Filter und das Suchfeld können Sie die Richtlinienliste filtern.

  4. Klicken Sie auf Policy actions und anschließend auf Attach.

  5. Wählen Sie den Benutzer aus, an den Sie die Richtlinie anfügen möchten. Über das Menü Filter und das Suchfeld können Sie die Liste der Prinzipal-Entitäten filtern. Nachdem Sie den Benutzer zum Anfügen der Richtlinie ausgewählt haben, klicken Sie auf Attach Policy (Richtlinie anfügen).

So fügen Sie eine verwaltete CloudWatchLogsReadOnlyAccess-Richtlinie an

Sie können einem Benutzer die Richtlinie CloudWatchLogsReadOnlyAccess (CloudWatch-Protokolle Lesezugriff) anfügen, um die von AWS Glue erstellten Protokolle in der CloudWatch-Logs-Konsole anzuzeigen.

  1. Melden Sie sich bei der AWS Management Console an und öffnen Sie die IAM-Konsole unter https://console.aws.amazon.com/iam/.

  2. Wählen Sie im Navigationsbereich Policies.

  3. Aktivieren Sie in der Liste der Richtlinien das Kontrollkästchen neben CloudWatchLogsReadOnlyAccess (CloudWatch-Protokolle Lesezugriff). Über das Menü Filter und das Suchfeld können Sie die Richtlinienliste filtern.

  4. Klicken Sie auf Policy actions und anschließend auf Attach.

  5. Wählen Sie den Benutzer aus, an den Sie die Richtlinie anfügen möchten. Über das Menü Filter und das Suchfeld können Sie die Liste der Prinzipal-Entitäten filtern. Nachdem Sie den Benutzer zum Anfügen der Richtlinie ausgewählt haben, klicken Sie auf Attach Policy (Richtlinie anfügen).

So fügen Sie eine verwaltete AWSCloudFormationReadOnlyAccess-Richtlinie an

Sie können einem Benutzer die Richtlinie AWSCloudFormationReadOnlyAccess(AWSCloudFormation Lesezugriff) anfügen, um die von AWS Glue verwendeten AWS CloudFormation-Stacks in der AWS CloudFormation-Konsole anzuzeigen.

  1. Melden Sie sich bei der AWS Management Console an und öffnen Sie die IAM-Konsole unter https://console.aws.amazon.com/iam/.

  2. Wählen Sie im Navigationsbereich Policies.

  3. Aktivieren Sie in der Liste der Richtlinien das Kontrollkästchen neben AWSCloudFormationReadOnlyAccess (AWSCloudFormation Lesezugriff). Über das Menü Filter und das Suchfeld können Sie die Richtlinienliste filtern.

  4. Klicken Sie auf Policy actions und anschließend auf Attach.

  5. Wählen Sie den Benutzer aus, an den Sie die Richtlinie anfügen möchten. Über das Menü Filter und das Suchfeld können Sie die Liste der Prinzipal-Entitäten filtern. Nachdem Sie den Benutzer zum Anfügen der Richtlinie ausgewählt haben, klicken Sie auf Attach Policy (Richtlinie anfügen).

So fügen Sie die verwaltete AmazonAthenaFullAccess-Richtlinie an

Sie können einem Benutzer die Richtlinie AmazonAthenaFullAccess (Amazon Athena Vollzugriff) anfügen, um Amazon-S3-Daten in der Athena-Konsole anzuzeigen.

  1. Melden Sie sich bei der AWS Management Console an und öffnen Sie die IAM-Konsole unter https://console.aws.amazon.com/iam/.

  2. Wählen Sie im Navigationsbereich Policies.

  3. Aktivieren Sie in der Liste der Richtlinien das Kontrollkästchen neben AmazonAthenaFullAccess (Amazon Athena Vollzugriff). Über das Menü Filter und das Suchfeld können Sie die Richtlinienliste filtern.

  4. Klicken Sie auf Policy actions und anschließend auf Attach.

  5. Wählen Sie den Benutzer aus, an den Sie die Richtlinie anfügen möchten. Über das Menü Filter und das Suchfeld können Sie die Liste der Prinzipal-Entitäten filtern. Nachdem Sie den Benutzer zum Anfügen der Richtlinie ausgewählt haben, klicken Sie auf Attach Policy (Richtlinie anfügen).