

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.

# Datenfilter verwalten
<a name="managing-filters"></a>

Um Sicherheit auf Spalten-, Zeilen- und Zellenebene zu implementieren, können Sie Datenfilter erstellen und verwalten. Jeder Datenfilter gehört zu einer Datenkatalogtabelle. Sie können mehrere Datenfilter für eine Tabelle erstellen und dann einen oder mehrere davon verwenden, wenn Sie Berechtigungen für die Tabelle gewähren. Sie können auch Datenfilter für verschachtelte Spalten mit `struct` Datentypen definieren und anwenden, sodass Benutzer nur auf Unterstrukturen verschachtelter Spalten zugreifen können.

Um einen Datenfilter zu erstellen oder anzuzeigen, benötigen Sie eine `SELECT` entsprechende Genehmigung mit der Option „Gewähren“. Um den Hauptbenutzern in Ihrem Konto das Anzeigen und Verwenden eines Datenfilters zu ermöglichen, können Sie ihm die `DESCRIBE` entsprechende Berechtigung erteilen.

**Anmerkung**  
Lake Formation unterstützt nicht die Erteilung von `Describe` Berechtigungen für einen Datenfilter, der von einem anderen Konto aus geteilt wird.

Sie können Datenfilter mithilfe der AWS Lake Formation Konsole, der API oder der AWS Command Line Interface (AWS CLI) verwalten.

Hinweise zu Datenfiltern finden Sie unter [Datenfilter in Lake Formation](data-filtering.md#data-filters-about)

# Einen Datenfilter erstellen
<a name="creating-data-filters"></a>

Sie können einen oder mehrere Datenfilter für jede Datenkatalogtabelle erstellen.

**Um einen Datenfilter für eine Datenkatalogtabelle (Konsole) zu erstellen**

1. Öffnen Sie die Lake Formation Formation-Konsole unter [https://console.aws.amazon.com/lakeformation/](https://console.aws.amazon.com/lakeformation/).

   Melden Sie sich als Data Lake-Administrator, Besitzer der Zieltabelle oder als Principal an, der über eine Lake Formation Formation-Berechtigung für die Zieltabelle verfügt.

1. Wählen Sie im Navigationsbereich unter **Datenkatalog** die Option **Datenfilter** aus.

1. Wählen Sie auf der Seite **Datenfilter** die Option **Neuen Filter erstellen** aus.

1. Geben **Sie im Dialogfeld Datenfilter erstellen** die folgenden Informationen ein:
   + Name des Datenfilters 
   + Zieldatenbank — Geben Sie die Datenbank an, die die Tabelle enthält.
   + Zieltabelle 
   + Zugriff auf Spaltenebene — Belassen Sie diese Einstellung **auf Zugriff auf alle Spalten, um** nur die Zeilenfilterung festzulegen. Wählen Sie Spalten **einschließen oder Spalten** **ausschließen, um die Spalten** - oder Zellenfilterung festzulegen, und geben Sie dann die Spalten an, die ein- oder ausgeschlossen werden sollen.

     Verschachtelte Spalten — Wenn Sie den Filter auf eine Tabelle anwenden, die verschachtelte Spalten enthält, können Sie explizit Unterstrukturen der verschachtelten Strukturspalten innerhalb eines Datenfilters angeben. 

     Wenn Sie einem Prinzipal die SELECT-Berechtigung für diesen Filer gewähren, sieht der Principal, der die folgende Abfrage ausführt, nur die Daten für und nicht. `customer.customerName` `customer.customerId`

     ```
     SELECT "customer" FROM "example_db"."example_table";
     ```  
![\[Column-level access settings with options to include specific columns and filter rows.\]](http://docs.aws.amazon.com/de_de/lake-formation/latest/dg/images/nested-column-filter.png)

      Wenn Sie Berechtigungen für die `customer` Spalte erteilen, erhält der Principal Zugriff auf die Spalte und die verschachtelten Felder unter der Spalte (`customerName`und`customerID`). 
   + Zeilenfilterausdruck — Geben Sie einen Filterausdruck ein, um die Zeilen- oder Zellenfilterung festzulegen. Informationen zu unterstützten Datentypen und Operatoren finden Sie unter[PartiQL-Unterstützung in Zeilenfilterausdrücken](partiql-support.md). Wählen Sie **Zugriff auf alle Zeilen**, um Zugriff auf alle zu gewähren.

     Sie können teilweise Spaltenstrukturen aus verschachtelten Spalten in einen Zeilenfilterausdruck einbeziehen, um Zeilen zu filtern, die einen bestimmten Wert enthalten.

     Wenn einem Prinzipal Berechtigungen für eine Tabelle mit einem Zeilenfilterausdruck gewährt werden und der Zugriff auf **Spaltenebene** auf Zugriff auf **alle Spalten** festgelegt ist`Select * from example_nestedtable where customer.customerName <>'John'`, werden in den Abfrageergebnissen nur Zeilen angezeigt, deren `customerName <>'John'` Auswertung den Wert True ergibt.

   Der folgende Screenshot zeigt einen Datenfilter, der die Zellfilterung implementiert. Bei Abfragen der `orders` Tabelle wird der Zugriff auf die `customer_name` Spalte verweigert und es werden nur Zeilen angezeigt, die „Pharma“ in der `product_type` Spalte enthalten.  
![\[Das Datenfilterfenster enthält die folgenden Felder, die vertikal angeordnet sind: Datenfiltername; Zieldatenbank; Zieltabelle; Optionsfeldgruppe mit den Optionen Zugriff auf alle Spalten, Spalten einschließen und Spalten ausschließen; Spalten auswählen (Dropdownliste); Zeilenfilterausdruck (mehrzeiliges Textfeld). Die Option Spalten ausschließen ist ausgewählt, die Spalte customer_name ist für den Ausschluss ausgewählt und das Ausdrucksfeld für den Zeilenfilter enthält 'product_type='pharma'.\]](http://docs.aws.amazon.com/de_de/lake-formation/latest/dg/images/data-filter-sample-pharma.png)

1. Wählen Sie **Create Filter)** (Filter erstellen.

**Um einen Datenfilter mit Zellfilterrichtlinien für ein verschachteltes Feld zu erstellen**

 In diesem Abschnitt wird anhand des folgenden Beispielschemas veranschaulicht, wie ein Datenzellenfilter erstellt wird: 

```
[
    { name: "customer", type: "struct<customerId:string,customerName:string>" },
    { name: "customerApplication", type: "struct<appId:string>" },
    { name: "product", type: "struct<offer:struct<prodId:string,listingId:string>,type:string>" },
    { name: "purchaseId", type: "string" },
]
```

1. Geben Sie auf der Seite **Datenfilter erstellen einen** Namen für den Datenfilter ein.

1.  Verwenden Sie als Nächstes die Dropdownliste, um einen Datenbanknamen und einen Tabellennamen auszuwählen. 

1. Wählen Sie im Abschnitt **Zugriff auf Spaltenebene** die Option Eingeschlossene Spalten und wählen Sie eine verschachtelte Spalte () aus. `customer.customerName`

1. **Wählen Sie im Abschnitt **Zugriff auf Zeilenebene die Option Zugriff auf** alle Zeilen aus.**

1. Wählen Sie **Create Filter)** (Filter erstellen.

   Wenn Sie die `SELECT` Berechtigung für diesen Filter erteilen, erhält der Principal Zugriff auf alle Zeilen in der `customerName` Spalte.

1. Definieren Sie als Nächstes einen weiteren Datenfilter für dieselbe Datenbank/Tabelle.

1. Wählen Sie im Abschnitt **Zugriff auf Spaltenebene** die Option Eingeschlossene Spalten und wählen Sie eine weitere verschachtelte Spalte aus (). `customer.customerid`

1. Wählen Sie im Abschnitt **Zugriff auf Zeilenebene** die Option **Zeilen filtern** aus und geben Sie einen **Zeilenfilterausdruck** () ein. `customer.customerid <> 5`

1. Wählen Sie **Create Filter)** (Filter erstellen.

   Wenn Sie die `SELECT` Berechtigung für diesen Filter erteilen, erhält der Principal Zugriff auf alle Zeilen in den `customerId` Feldern und mit Ausnahme der Zelle`customerName`, in der der Wert 5 in der `customerId` Spalte ist.

# Erteilen von Datenfilterberechtigungen
<a name="granting-filter-perms"></a>

Sie können Prinzipalen die Berechtigungen`SELECT`, `DESCRIBE` und `DROP` Lake Formation für Datenfilter gewähren.

Zunächst können nur Sie die Datenfilter anzeigen, die Sie für eine Tabelle erstellen. Damit ein anderer Principal einen Datenfilter anzeigen und Datenkatalogberechtigungen für den Datenfilter gewähren kann, müssen Sie entweder:
+ Gewähren Sie `SELECT` dem Prinzipal mit der Grant-Option in einer Tabelle und wenden Sie den Datenfilter auf den Zuschuss an.
+ Erteilen Sie dem Prinzipal die `DROP` Berechtigung `DESCRIBE` oder für den Datenfilter.

Sie können die `SELECT` Erlaubnis einem externen AWS Konto erteilen. Ein Data Lake-Administrator in diesem Konto kann diese Berechtigung dann anderen Prinzipalen im Konto gewähren. Wenn Sie die Erteilung an ein externes Konto vornehmen, müssen Sie die Option „Erteilen“ angeben, damit der Administrator des externen Kontos die Berechtigung weiter an andere Benutzer im his/her Konto weitergeben kann. Wenn Sie die Gewährung an einen Hauptbenutzer in Ihrem Konto vornehmen, ist die Gewährung mit der Grant-Option optional.

Sie können Berechtigungen für Datenfilter mithilfe der AWS Lake Formation Konsole, der API oder der AWS Command Line Interface (AWS CLI) gewähren und widerrufen.

------
#### [ Console ]

1. Melden Sie sich bei der an AWS-Managementkonsole und öffnen Sie die Lake Formation Formation-Konsole unter [https://console.aws.amazon.com/lakeformation/](https://console.aws.amazon.com/lakeformation/).

1. Wählen Sie im Navigationsbereich unter **Berechtigungen** die Option **Data Lake-Berechtigungen** aus.

1. Wählen Sie auf der Seite **Berechtigungen** im Abschnitt **Datenberechtigungen** die Option **Grant** aus.

1. Wählen Sie auf der Seite **Datenberechtigungen gewähren** die Principals aus, denen die Berechtigungen erteilt werden sollen. 

1. Wählen Sie im Abschnitt LF-Tags oder Katalogressourcen die Option **Benannte Datenkatalogressourcen** aus. Wählen Sie dann die Datenbank, Tabelle und den Datenfilter aus, für die Sie Berechtigungen erteilen möchten.  
![\[\]](http://docs.aws.amazon.com/de_de/lake-formation/latest/dg/images/grant-data-filter-perms-step2.png)

1. Wählen Sie im Abschnitt **Datenfilterberechtigungen** die Berechtigungen aus, die Sie den ausgewählten Prinzipalen gewähren möchten.  
![\[\]](http://docs.aws.amazon.com/de_de/lake-formation/latest/dg/images/grant-perms-on-filters.png)

------
#### [ AWS CLI ]
+ Geben Sie einen `grant-permissions` Befehl ein. Geben Sie `DataCellsFilter` für das `resource` Argument an und geben Sie `DESCRIBE` oder `DROP` für das `Permissions` Argument und optional für das `PermissionsWithGrantOption` Argument an.

  Im folgenden Beispiel wird dem Benutzer `datalake_user1` auf `DESCRIBE` dem Datenfilter`restrict-pharma`, der zur `orders` Tabelle in der `sales` Datenbank im AWS Konto 1111-2222-3333 gehört, Genehmigungen mit der Grant-Option gewährt.

  ```
  aws lakeformation grant-permissions --cli-input-json file://grant-params.json
  ```

  Im Folgenden ist der Inhalt der Datei aufgeführt. `grant-params.json`

  ```
  {
      "Principal": {"DataLakePrincipalIdentifier": "arn:aws:iam::111122223333:user/datalake_user1"},
      "Resource": {
          "DataCellsFilter": {
              "TableCatalogId": "111122223333",
              "DatabaseName": "sales",
              "TableName": "orders",
              "Name": "restrict-pharma"
          }
      },
      "Permissions": ["DESCRIBE"],
      "PermissionsWithGrantOption": ["DESCRIBE"]
  }
  ```

------

# Erteilen von Datenberechtigungen, die durch Datenfilter bereitgestellt werden
<a name="granting-data-perms-for-filters"></a>

Datenfilter stellen eine Teilmenge von Daten innerhalb einer Tabelle dar. Um Prinzipalen Datenzugriff zu gewähren, müssen diesen Prinzipalen `SELECT` Berechtigungen erteilt werden. Mit dieser Genehmigung können die Principals:
+ Den tatsächlichen Tabellennamen in der Liste der Tabellen anzeigen, die mit ihrem Konto geteilt wurden.
+ Erstellen Sie Datenfilter für die gemeinsam genutzte Tabelle und gewähren Sie ihren Benutzern Berechtigungen für diese Datenfilter.

------
#### [ Console ]

**Um SELECT-Berechtigungen zu gewähren**

1. Rufen Sie in der Lake Formation Formation-Konsole die Seite „**Berechtigungen**“ auf und wählen Sie dann **Grant** aus.  
![\[\]](http://docs.aws.amazon.com/de_de/lake-formation/latest/dg/images/permissions-grant-action.png)

1. Wählen Sie die Prinzipale aus, auf die Sie Zugriff gewähren möchten, und wählen Sie **Benannte Datenkatalogressourcen** aus.  
![\[\]](http://docs.aws.amazon.com/de_de/lake-formation/latest/dg/images/grant-data-filter-perms-step2.png)

1. ****Um Zugriff auf die Daten zu gewähren, die der Filter darstellt, wählen Sie unter Datenfilterberechtigungen die Option Auswählen aus.****  
![\[\]](http://docs.aws.amazon.com/de_de/lake-formation/latest/dg/images/grant-data-filter-perms-step3.png)

------
#### [ CLI ]

Geben Sie einen Befehl ein. `grant-permissions` Geben Sie `DataCellsFilter` für das Argument Ressource und `SELECT` für das Argument Berechtigungen an. 

Das folgende Beispiel gewährt `SELECT` dem Benutzer `datalake_user1` mit der Grant-Option Berechtigungen für den Datenfilter`restrict-pharma`, der zu der `orders` Tabelle in der `sales` Datenbank gehört AWS-Konto `1111-2222-3333`. 

```
aws lakeformation grant-permissions --cli-input-json file://grant-params.json 
```

Im Folgenden finden Sie den Inhalt der Datei`grant-params.json`. 

```
{
    "Principal": {
        "DataLakePrincipalIdentifier": "arn:aws:iam::111122223333:user/datalake_user1"
    },
    "Resource": {
        "DataCellsFilter": {
            "TableCatalogId": "111122223333", 
            "DatabaseName": "sales", 
            "TableName": "orders", 
            "Name": "restrict-pharma"
        }
    },
    "Permissions": ["SELECT"]
}
```

------

# Datenfilter anzeigen
<a name="view-data-filters"></a>

Sie können die Lake Formation Formation-Konsole oder die Lake Formation Formation-API verwenden, um Datenfilter anzuzeigen. AWS CLI

Um Datenfilter anzeigen zu können, müssen Sie ein Data Lake-Administrator sein oder über die erforderlichen Berechtigungen für die Datenfilter verfügen.

------
#### [ Console ]

1. Melden Sie sich bei der an AWS-Managementkonsole und öffnen Sie die Lake Formation Formation-Konsole unter [https://console.aws.amazon.com/lakeformation/](https://console.aws.amazon.com/lakeformation/).

1. Wählen Sie im Navigationsbereich unter **Datenkatalog** die Option **Datenfilter** aus.

   Auf der Seite werden die Datenfilter angezeigt, auf die Sie Zugriff haben.  
![\[Auf der Seite Datenfilter werden die verfügbaren Datenfilter mit den folgenden Spalten angezeigt: Filtername, Tabelle, Datenbank und Tabellenkatalog-ID. Der Screenshot zeigt einen einzelnen Datenfilter mit den folgenden Werten: test-df, cloudtrailtest_cloudtrail, lakeformation_cloudtrail, redigierte Konto-ID. Über der Tabelle befinden sich vier Schaltflächen (von links nach rechts): Aktualisieren/neu laden, Ansicht (ausgegraut), Löschen (ausgegraut) und „Neuen Filter erstellen“. Es gibt auch ein Suchfeld, das leer ist.\]](http://docs.aws.amazon.com/de_de/lake-formation/latest/dg/images/list-data-filters.jpg)

1. Um die Datenfilterdetails anzuzeigen, wählen Sie den Datenfilter und dann Ansicht aus. Ein neues Fenster mit detaillierten Informationen zum Datenfilter wird angezeigt.  
![\[Das Fenster „Datenfilter anzeigen“ zeigt zusätzliche Informationen zum ausgewählten Datenfilter. Zu den angezeigten Informationen gehören der Name, die Datenbank, die Tabelle, die Zugriffseinstellung auf Spaltenebene, der Zeilenfilterausdruck und die Spalten.\]](http://docs.aws.amazon.com/de_de/lake-formation/latest/dg/images/list-data-filters-details.jpg)

------
#### [ AWS CLI ]

Geben Sie einen `list-data-cells-filter` Befehl ein und geben Sie eine Tabellenressource an.

Das folgende Beispiel listet die Datenfilter für die `cloudtrailtest_cloudtrail` Tabelle auf.

```
aws lakeformation list-data-cells-filter --table '{ "CatalogId":"123456789012", 
"DatabaseName":"lakeformation_cloudtrail", "Name":"cloudtrailtest_cloudtrail"}'
```

------
#### [ API/SDK ]

Verwenden Sie die `ListDataCellsFilter` API und geben Sie eine Tabellenressource an.

Das folgende Beispiel verwendet Python, um die ersten 20 Datenfilter für die `myTable` Tabelle aufzulisten.

```
response = client.list_data_cells_filter(
    Table = {
        'CatalogId': '111122223333',
        'DatabaseName': 'mydb',
        'Name': 'myTable'
    },
    MaxResults=20
)
```

------

# Datenfilterberechtigungen auflisten
<a name="listing-filter-perms"></a>

Sie können die Lake Formation Formation-Konsole verwenden, um die für Datenfilter erteilten Berechtigungen anzuzeigen. 

Um die Berechtigungen für einen Datenfilter anzeigen zu können, müssen Sie ein Data Lake-Administrator sein oder über die erforderlichen Berechtigungen für den Datenfilter verfügen.

------
#### [ Console ]

1. Melden Sie sich bei der an AWS-Managementkonsole und öffnen Sie die Lake Formation Formation-Konsole unter [https://console.aws.amazon.com/lakeformation/](https://console.aws.amazon.com/lakeformation/).

1. Wählen Sie im Navigationsbereich unter **Berechtigungen** die Option **Datenberechtigungen** aus.

1. Klicken oder tippen Sie auf der Seite **Datenberechtigungen** in das Suchfeld und wählen Sie im Menü **Eigenschaften** die Option **Ressourcentyp** aus.

1. Wählen Sie im Menü **Ressourcentyp** die Option **Ressourcentyp: Datenzellenfilter** aus.

   Die Datenfilter, für die Sie Berechtigungen haben, werden aufgelistet. Möglicherweise müssen Sie horizontal scrollen, um die Spalten **Permissions** und **Grantable** zu sehen.  
![\[Auf der Seite „Datenberechtigungen“ wird eine Tabelle mit Berechtigungen mit den folgenden Spalten angezeigt: Principal, Ressourcentyp, Datenbank, Tabelle, Ressource, Katalog und Berechtigungen. In der Spalte Ressourcentyp wird in allen vier Zeilen „Datenzellenfilter“ angezeigt. Die Berechtigungen für die erste und zweite Zeile lauten Describe, Drop und Select. Die Berechtigungen für die dritte Zeile lauten Describe. Über der Tabelle befindet sich eine Schaltfläche „Filter löschen“ und eine Kachel, die angibt, dass die aktuelle Suche nach Ressourcentyp: Datenzellenfilter erfolgt. Darüber befindet sich ein Suchfeld (Textfeld) und darüber befinden sich die Schaltflächen „Aktualisieren“, „Widerrufen“ und „Gewähren“.\]](http://docs.aws.amazon.com/de_de/lake-formation/latest/dg/images/data-permissions-cell-filters.png)

------
#### [ AWS CLI ]
+ Geben Sie einen `list-permissions` Befehl ein. Geben Sie `DataCellsFilter` für das `resource` Argument an und geben Sie `DESCRIBE` oder `DROP` für das `Permissions` Argument und optional für das `PermissionsWithGrantOption` Argument an.

  Das folgende Beispiel listet `DESCRIBE` Berechtigungen mit der Grant-Option für den Datenfilter auf`restrict-pharma`. Die Ergebnisse beschränken sich auf Berechtigungen, die für den Prinzipal `datalake_user1` und die `orders` Tabelle in der `sales` Datenbank im AWS Konto 1111-2222-3333 erteilt wurden.

  ```
  aws lakeformation list-permissions --cli-input-json file://list-params.json
  ```

  Im Folgenden finden Sie den Inhalt der Datei. `grant-params.json`

  ```
  {
      "Principal": {"DataLakePrincipalIdentifier": "arn:aws:iam::111122223333:user/datalake_user1"},
      "Resource": {
          "DataCellsFilter": {
              "TableCatalogId": "111122223333",
              "DatabaseName": "sales",
              "TableName": "orders",
              "Name": "restrict-pharma"
          }
      },
      "Permissions": ["DESCRIBE"],
      "PermissionsWithGrantOption": ["DESCRIBE"]
  }
  ```

------