Erteilen, Widerrufen und Auflisten von LF-Tag-Berechtigungen mithilfe der AWS CLI - AWS Lake Formation

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.

Erteilen, Widerrufen und Auflisten von LF-Tag-Berechtigungen mithilfe der AWS CLI

Sie können Berechtigungen für LF-Tags gewähren, entziehen und auflisten, indem Sie () verwenden. AWS Command Line Interface AWS CLI

Um LF-Tag-Berechtigungen aufzulisten ()AWS CLI
  • Geben Sie einen Befehl einlist-permissions. Sie müssen der Ersteller des LF-Tags oder ein Data Lake-Administrator sein oder über die,,, DropAlter, Grant with LF-Tag permissions -Berechtigung für ein LF-Tag verfügen DescribeAssociate, um es sehen zu können.

    Der folgende Befehl fordert alle LF-Tags an, für die Sie Berechtigungen haben.

    aws lakeformation list-permissions --resource-type LF_TAG

    Im Folgenden finden Sie eine Beispielausgabe für einen Data Lake-Administrator, der alle LF-Tags sieht, die allen Prinzipalen gewährt wurden. Benutzern ohne Administratorrechte werden nur LF-Tags angezeigt, die ihnen gewährt wurden. LF-Tag-Berechtigungen, die von einem externen Konto aus gewährt wurden, werden auf einer separaten Ergebnisseite angezeigt. Um sie zu sehen, wiederholen Sie den Befehl und geben Sie dem --next-token Argument das Token an, das bei der vorherigen Befehlsausführung zurückgegeben wurde.

    {
        "PrincipalResourcePermissions": [
            {
                "Principal": {
                    "DataLakePrincipalIdentifier": "arn:aws:iam::111122223333:user/datalake_admin"
                },
                "Resource": {
                    "LFTag": {
                        "CatalogId": "111122223333",
                        "TagKey": "environment",
                        "TagValues": [
                            "*"
                        ]
                    }
                },
                "Permissions": [
                    "ASSOCIATE"
                ],
                "PermissionsWithGrantOption": [
                    "ASSOCIATE"
                ]
            },
            {
                "Principal": {
                    "DataLakePrincipalIdentifier": "arn:aws:iam::111122223333:user/datalake_user1"
                },
                "Resource": {
                    "LFTag": {
                        "CatalogId": "111122223333",
                        "TagKey": "module",
                        "TagValues": [
                            "Orders",
                            "Sales"
                        ]
                    }
                },
                "Permissions": [
                    "DESCRIBE"
                ],
                "PermissionsWithGrantOption": []
            },
    ...
        ],
        "NextToken": "eyJzaG91bGRRdWVy...Wlzc2lvbnMiOnRydWV9"
    }
    
    

    Sie können alle Grants für einen bestimmten LF-Tag-Schlüssel auflisten. Der folgende Befehl gibt alle für das LF-Tag gewährten Berechtigungen zurück. module

    aws lakeformation list-permissions --resource-type LF_TAG --resource '{ "LFTag": {"CatalogId":"111122223333","TagKey":"module","TagValues":["*"]}}'

    Sie können auch LF-Tag-Werte auflisten, die einem bestimmten Prinzipal für ein bestimmtes LF-Tag gewährt wurden. Wenn Sie das --principal Argument angeben, müssen Sie das Argument angeben. --resource Daher kann der Befehl effektiv nur die Werte anfordern, die einem bestimmten Prinzipal für einen bestimmten LF-Tag-Schlüssel gewährt wurden. Der folgende Befehl zeigt, wie dies für den Principal datalake_user1 und den LF-Tag-Schlüssel funktioniert. module

    aws lakeformation list-permissions --principal DataLakePrincipalIdentifier=arn:aws:iam::111122223333:user/datalake_user1 --resource-type LF_TAG --resource '{ "LFTag": {"CatalogId":"111122223333","TagKey":"module","TagValues":["*"]}}'

    Dies ist eine Beispielausgabe.

    {
        "PrincipalResourcePermissions": [
            {
                "Principal": {
                    "DataLakePrincipalIdentifier": "arn:aws:iam::111122223333:user/datalake_user1"
                },
                "Resource": {
                    "LFTag": {
                        "CatalogId": "111122223333",
                        "TagKey": "module",
                        "TagValues": [
                            "Orders",
                            "Sales"
                        ]
                    }
                },
                "Permissions": [
                    "ASSOCIATE"
                ],
                "PermissionsWithGrantOption": []
            }
        ]
    }
Um Berechtigungen für LF-Tags () zu gewähren AWS CLI
  1. Verwenden Sie einen Befehl ähnlich dem folgenden. In diesem Beispiel wird datalake_user1 dem Benutzer die Associate Berechtigung für das LF-Tag mit dem Schlüssel erteilt. module Es gewährt Berechtigungen zum Anzeigen und Zuweisen aller Werte für diesen Schlüssel, wie durch das Sternchen (*) gekennzeichnet.

    aws lakeformation grant-permissions --principal DataLakePrincipalIdentifier=arn:aws:iam::111122223333:user/datalake_user1 --permissions "ASSOCIATE" --resource '{ "LFTag": {"CatalogId":"111122223333","TagKey":"module","TagValues":["*"]}}'

    Durch die Erteilung der Associate Berechtigung wird die Berechtigung implizit erteilt. Describe

    Das nächste Beispiel gewährt Associate dem externen AWS Konto 1234-5678-9012 auf dem LF-Tag mit dem Schlüssel und der Grant-Option. module Es gewährt Berechtigungen, nur die Werte und anzuzeigen und zuzuweisen. sales orders

    aws lakeformation grant-permissions --principal DataLakePrincipalIdentifier=123456789012 --permissions "ASSOCIATE" --permissions-with-grant-option "ASSOCIATE" --resource '{ "LFTag": {"CatalogId":"111122223333","TagKey":"module","TagValues":["sales", "orders"]}}'
  2. Die Erteilung der GrantWithLFTagExpression Erlaubnis gewährt implizit die Describe Erlaubnis.

    Das nächste Beispiel erteilt GrantWithLFTagExpression einem Benutzer auf dem LF-Tag mit dem Schlüssel die Option module Grant. Es gewährt Berechtigungen zum Anzeigen und Erteilen von Berechtigungen für Datenkatalogressourcen, wobei nur die Werte sales und verwendet werden. orders

    aws lakeformation grant-permissions --principal DataLakePrincipalIdentifier=111122223333 --permissions "GrantWithLFTagExpression" --permissions-with-grant-option "GrantWithLFTagExpression" --resource '{ "LFTag": {"CatalogId":"111122223333","TagKey":"module","TagValues":["sales", "orders"]}}'
  3. Im nächsten Beispiel werden einem Benutzer Drop Berechtigungen für das LF-Tag mit dem Schlüssel und der module Option Grant erteilt. Sie gewährt Berechtigungen zum Löschen des LF-Tags. Um ein LF-Tag zu löschen, benötigen Sie Berechtigungen für alle Werte dieses Schlüssels.

    aws lakeformation grant-permissions --principal DataLakePrincipalIdentifier=111122223333 --permissions "DROP" --permissions-with-grant-option "DROP" --resource '{ "LFTag": {"CatalogId":"111122223333","TagKey":"module","TagValues":["*"]}}'
  4. Das nächste Beispiel gewährt dem Benutzer mit dem LF-Tag mit dem Schlüssel Alter Berechtigungen mit der module Grant-Option. Es gewährt Berechtigungen zum Löschen des LF-Tags. Um ein LF-Tag zu aktualisieren, benötigen Sie Berechtigungen für alle Werte dieses Schlüssels.

    aws lakeformation grant-permissions --principal DataLakePrincipalIdentifier=111122223333 --permissions "ALTER" --permissions-with-grant-option "ALTER" --resource '{ "LFTag": {"CatalogId":"111122223333","TagKey":"module","TagValues":["*"]}}'
Um Berechtigungen für LF-Tags () zu widerrufen AWS CLI
  • Verwenden Sie einen Befehl ähnlich dem folgenden. In diesem Beispiel wird dem Benutzer die Associate Erlaubnis für das LF-Tag mit dem Schlüssel entzogen. module datalake_user1

    aws lakeformation revoke-permissions --principal DataLakePrincipalIdentifier=arn:aws:iam::111122223333:user/datalake_user1 --permissions "ASSOCIATE" --resource '{ "LFTag": {"CatalogId":"111122223333","TagKey":"module","TagValues":["*"]}}'