

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# Lake Formation 許可參考
<a name="lf-permissions-reference"></a>

若要執行 AWS Lake Formation 操作，主體需要 Lake Formation 許可和 AWS Identity and Access Management (IAM) 許可。您通常會使用*粗粒*存取控制政策授予 IAM 許可，如中所述[Lake Formation 許可概觀](lf-permissions-overview.md)。您可以使用 主控台、 API 或 AWS Command Line Interface () 授予 Lake Formation 許可AWS CLI。

若要了解如何授予或撤銷 Lake Formation 許可，請參閱 [授予 Data Catalog 資源的許可](granting-catalog-permissions.md)和 [授予資料位置許可](granting-location-permissions.md)。

**注意**  
本節中的範例示範如何將許可授予相同 AWS 帳戶中的主體。如需跨帳戶授與的範例，請參閱 [Lake Formation 中的跨帳戶資料共用](cross-account-permissions.md)。

## 每個資源類型的 Lake Formation 許可
<a name="lf-resource-permissions-summary"></a>

以下是每種資源類型可用的有效 Lake Formation 許可：

[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_tw/lake-formation/latest/dg/lf-permissions-reference.html)

**Topics**
+ [每個資源類型的 Lake Formation 許可](#lf-resource-permissions-summary)
+ [Lake Formation 授予和撤銷 AWS CLI 命令](#perm-command-format)
+ [Lake Formation 許可](#lf-permissions)

## Lake Formation 授予和撤銷 AWS CLI 命令
<a name="perm-command-format"></a>

本節中的每個許可描述都包含使用 AWS CLI 命令授予許可的範例。以下是 Lake Formation **grant-permissions**和 **revoke-permissions** AWS CLI 命令的摘要。

```
grant-permissions
[--catalog-id <value>]
--principal <value>
--resource <value>
--permissions <value>
[--permissions-with-grant-option <value>]
[--cli-input-json <value>]
[--generate-cli-skeleton <value>]
```

```
revoke-permissions
[--catalog-id <value>]
--principal <value>
--resource <value>
--permissions <value>
[--permissions-with-grant-option <value>]
[--cli-input-json <value>]
[--generate-cli-skeleton <value>]
```

如需這些命令的詳細說明，請參閱*AWS CLI 《 命令參考*》中的 [grant-permissions](https://docs.aws.amazon.com/cli/latest/reference/lakeformation/grant-permissions.html) 和 [revoke-permissions](https://docs.aws.amazon.com/cli/latest/reference/lakeformation/revoke-permissions.html)。本節提供 `--principal`選項的其他資訊。

`--principal` 選項的值為下列其中一項：
+ (IAM) 使用者或角色的 Amazon Resource Name AWS Identity and Access Management (ARN)
+ 透過 SAML 提供者進行身分驗證之使用者或群組的 ARN，例如 Microsoft Active Directory Federation Service (AD FS)
+ Amazon Quick 使用者或群組的 ARN
+ 對於跨帳戶許可、 AWS 帳戶 ID、組織 ID 或組織單位 ID
+ 對於 IAM Identity Center 使用者或群組，IAM Identity Center 使用者或群組 ARN。

以下是所有`--principal`類型的語法和範例。

**Principal 是 IAM 使用者**  
語法:  

```
--principal DataLakePrincipalIdentifier=arn:aws:iam::<account-id>:user/<user-name>
```
範例：  

```
--principal DataLakePrincipalIdentifier=arn:aws:iam::111122223333:user/datalake_user1
```

**Principal 是 IAM 角色**  
語法:  

```
--principal DataLakePrincipalIdentifier=arn:aws:iam::<account-id>:role/<role-name>
```
範例：  

```
--principal DataLakePrincipalIdentifier=arn:aws:iam::111122223333:role/workflowrole
```

**委託人是透過 SAML 提供者進行身分驗證的使用者**  
語法：  

```
--principal DataLakePrincipalIdentifier=arn:aws:iam::<account-id>:saml-provider/<SAMLproviderName>:user/<user-name>
```
範例：  

```
--principal DataLakePrincipalIdentifier=arn:aws:iam::111122223333:saml-provider/idp1:user/datalake_user1
```

```
--principal DataLakePrincipalIdentifier=arn:aws:iam::111122223333:saml-provider/AthenaLakeFormationOkta:user/athena-user@example.com
```

**委託人是透過 SAML 提供者進行驗證的群組**  
語法：  

```
--principal DataLakePrincipalIdentifier=arn:aws:iam::<account-id>:saml-provider/<SAMLproviderName>:group/<group-name> 
```
範例：  

```
--principal DataLakePrincipalIdentifier=arn:aws:iam::111122223333:saml-provider/idp1:group/data-scientists
```

```
--principal DataLakePrincipalIdentifier=arn:aws:iam::111122223333:saml-provider/AthenaLakeFormationOkta:group/my-group
```

**Principal 是 Amazon Quick Enterprise Edition 使用者**  
語法：  

```
--principal DataLakePrincipalIdentifier=arn:aws:quicksight:<region>:<account-id>:user/<namespace>/<user-name>
```
對於 *<namespace>*，您必須指定 `default`。
範例：  

```
--principal DataLakePrincipalIdentifier=arn:aws:quicksight:us-east-1:111122223333:user/default/bi_user1
```

**Principal 是 Amazon Quick Enterprise Edition 群組**  
語法：  

```
--principal DataLakePrincipalIdentifier=arn:aws:quicksight:<region>:<account-id>:group/<namespace>/<group-name> 
```
對於 *<namespace>*，您必須指定 `default`。
範例：  

```
--principal DataLakePrincipalIdentifier=arn:aws:quicksight:us-east-1:111122223333:group/default/data_scientists
```

**委託人是 AWS 帳戶**  
語法:  

```
--principal DataLakePrincipalIdentifier=<account-id>
```
範例：  

```
--principal DataLakePrincipalIdentifier=111122223333
```

**委託人是組織**  
語法:  

```
--principal DataLakePrincipalIdentifier=arn:aws:organizations::<account-id>:organization/<organization-id>
```
範例：  

```
--principal DataLakePrincipalIdentifier=arn:aws:organizations::111122223333:organization/o-abcdefghijkl
```

**Principal 是組織單位**  
語法:  

```
--principal DataLakePrincipalIdentifier=arn:aws:organizations::<account-id>:ou/<organization-id>/<organizational-unit-id>
```
範例：  

```
--principal DataLakePrincipalIdentifier=arn:aws:organizations::111122223333:ou/o-abcdefghijkl/ou-ab00-cdefghij
```

**Principal 是 IAM Identity Center 身分使用者或群組**  
範例：使用者  

```
--principal DataLakePrincipalIdentifier=arn:aws:identitystore:::user/<UserID>
```
範例：群組：  

```
--principal DataLakePrincipalIdentifier=arn:aws:identitystore:::group/<GroupID>
```

**Principal 是 IAM 群組 - `IAMAllowedPrincipals`**  
Lake Formation 會將 Data Catalog 中所有資料庫和資料表的`Super`許可設定為`IAMAllowedPrincipals`預設稱為 的群組。如果此群組許可存在於資料庫或資料表上，則您帳戶中的所有主體都可以透過 IAM 主體政策存取資源 AWS Glue。當您開始使用 Lake Formation 許可來保護先前受到 IAM 政策保護的資料目錄資源時，它可提供回溯相容性 AWS Glue。  
當您使用 Lake Formation 管理 Data Catalog 資源的許可時，您必須先撤銷資源的`IAMAllowedPrincipals`許可，或選擇將主體和資源加入混合存取模式， Lake Formation 許可才能運作。  
範例：  

```
--principal DataLakePrincipalIdentifier=IAM_Allowed_Principals
```

**Principal 是 IAM 群組 - `ALLIAMPrincipals`**  
當您授予在 Data Catalog 資源上`ALLIAMPrincipals`分組的許可時，帳戶中的每個主體都可以使用 Lake Formation 許可和 IAM 許可來存取 Data Catalog 資源。  
範例：  

```
--principal DataLakePrincipalIdentifier=123456789012:IAMPrincipals
```

## Lake Formation 許可
<a name="lf-permissions"></a>

本節包含您可以授予委託人的可用 Lake Formation 許可。

### `ALTER`
<a name="perm-alter"></a>


| 權限 | 在此資源上授予 | 承授者也需要 | 
| --- | --- | --- | 
| ALTER | DATABASE | glue:UpdateDatabase  | 
| ALTER | TABLE | glue:UpdateTable | 
| ALTER | LF-Tag | lakeformation:UpdateLFTag | 

具有此許可的主體可以變更 Data Catalog 中資料庫或資料表的中繼資料。對於資料表，您可以變更資料欄結構描述並新增資料欄參數。您無法變更中繼資料資料表指向的基礎資料中的資料欄。

如果正在變更的 屬性是已註冊的 Amazon Simple Storage Service (Amazon S3) 位置，委託人必須擁有新位置的資料位置許可。

**Example**  
下列範例會將 `ALTER`許可授予 AWS 帳戶 1111-2222-3333 `retail`中資料庫`datalake_user1`上的 使用者。  

```
aws lakeformation grant-permissions --principal DataLakePrincipalIdentifier=arn:aws:iam::111122223333:user/datalake_user1 --permissions "ALTER" --resource '{ "Database": {"Name":"retail"}}'
```

**Example**  
下列範例`ALTER`會授予資料庫 `datalake_user1`中 資料表`inventory`上的使用者 `retail`。  

```
aws lakeformation grant-permissions --principal DataLakePrincipalIdentifier=arn:aws:iam::111122223333:user/datalake_user1 --permissions "ALTER" --resource '{ "Table": {"DatabaseName":"retail", "Name":"inventory"}}'
```

### `CREATE_DATABASE`
<a name="perm-create-database"></a>


| 權限 | 在此資源上授予 | 承授者也需要 | 
| --- | --- | --- | 
| CREATE\$1DATABASE | Data Catalog | glue:CreateDatabase | 

具有此許可的主體可以在 Data Catalog 中建立中繼資料資料庫或資源連結。委託人也可以在資料庫中建立資料表。

**Example**  
下列範例`CREATE_DATABASE`授予 AWS 帳戶 1111-2222-3333 `datalake_user1`中的使用者。  

```
aws lakeformation grant-permissions --principal DataLakePrincipalIdentifier=arn:aws:iam::111122223333:user/datalake_user1 --permissions "CREATE_DATABASE" --resource '{ "Catalog": {}}'
```

當委託人在 Data Catalog 中建立資料庫時，不會授予基礎資料的許可。已授予下列其他中繼資料許可 （以及將這些許可授予他人的能力）：
+ `CREATE_TABLE` 資料庫中的
+ `ALTER` 資料庫
+ `DROP` 資料庫

建立資料庫時，主體可以選擇性地指定 Amazon S3 位置。根據委託人是否具有資料位置許可，`CREATE_DATABASE`許可可能不足以在所有情況下建立資料庫。請務必謹記下列三個案例。


| 建立資料庫使用案例 | 需要的許可 | 
| --- | --- | 
| 未指定位置屬性。 | CREATE\$1DATABASE 已足夠。 | 
| 已指定位置屬性，且位置不是由 Lake Formation 管理 （未註冊）。 | CREATE\$1DATABASE 已足夠。 | 
| 已指定位置屬性，且位置由 Lake Formation 管理 （已註冊）。 | CREATE\$1DATABASE 必要，加上指定位置上的資料位置許可。 | 

### `CREATE_TABLE`
<a name="perm-create-table"></a>


| 權限 | 在此資源上授予 | 承授者也需要 | 
| --- | --- | --- | 
| CREATE\$1TABLE | DATABASE | glue:CreateTable  | 

具有此許可的主體可以在指定資料庫中的 Data Catalog 中建立中繼資料表或資源連結。

**Example**  
下列範例授予使用者在 AWS 帳戶 1111-2222-3333 的`retail`資料庫中建立資料表的`datalake_user1`許可。  

```
aws lakeformation grant-permissions --principal DataLakePrincipalIdentifier=arn:aws:iam::111122223333:user/datalake_user1 
 --permissions "CREATE_TABLE" --resource '{ "Database": {"Name":"retail"}}'
```

當委託人在 Data Catalog 中建立資料表時，資料表上的所有 Lake Formation 許可都會授予委託人，並能夠將這些許可授予其他人。

**跨帳戶授權**  
如果資料庫擁有者帳戶`CREATE_TABLE`授予收件人帳戶，且收件人帳戶中的使用者成功在擁有者帳戶的資料庫中建立資料表，則適用下列規則：
+ 收件人帳戶中的使用者和資料湖管理員擁有資料表上的所有 Lake Formation 許可。他們可以將資料表的許可授予其帳戶中的其他主體。他們無法將許可授予擁有者帳戶或任何其他帳戶中的主體。
+ 擁有者帳戶中的資料湖管理員可以將資料表的許可授予其帳戶中的其他主體。

**資料位置許可**  
當您嘗試建立指向 Amazon S3 位置的資料表時，取決於您是否具有資料位置許可，`CREATE_TABLE`許可可能不足以建立資料表。請務必謹記下列三個案例。


| 建立資料表使用案例 | 需要的許可 | 
| --- | --- | 
| 指定的位置不是由 Lake Formation 管理 （未註冊）。 | CREATE\$1TABLE 已足夠。 | 
| 指定的位置由 Lake Formation （已註冊） 管理，且包含 的資料庫沒有位置屬性，或具有不是資料表位置 Amazon S3 字首的位置屬性。 | CREATE\$1TABLE 必要，加上指定位置上的資料位置許可。 | 
| 指定的位置由 Lake Formation （已註冊） 管理，且包含 的資料庫具有指向已註冊位置的位置屬性，並且是資料表位置的 Amazon S3 字首。 | CREATE\$1TABLE 已足夠。 | 

### `DATA_LOCATION_ACCESS`
<a name="perm-location"></a>


| 權限 | 在此資源上授予 | 承授者也需要 | 
| --- | --- | --- | 
| DATA\$1LOCATION\$1ACCESS | Amazon S3 位置 | （位置上的 Amazon S3 許可，必須由用來註冊位置的角色指定。) | 

這是唯一的資料位置許可。具有此許可的主體可以建立指向指定 Amazon S3 位置的中繼資料資料庫或資料表。位置必須註冊。在位置具有資料位置許可的委託人在子位置也有位置許可。

**Example**  
下列範例`s3://products/retail`會將 上的資料位置許可授予帳戶 1111-2222-3333 `datalake_user1`中的 AWS 使用者。  

```
aws lakeformation grant-permissions --principal DataLakePrincipalIdentifier=arn:aws:iam::111122223333:user/datalake_user1 --permissions "DATA_LOCATION_ACCESS" --resource '{ "DataLocation": {"ResourceArn":"arn:aws:s3:::products/retail"}}'
```

`DATA_LOCATION_ACCESS` 不需要查詢或更新基礎資料。此許可僅適用於建立 Data Catalog 資源。

如需資料位置許可的詳細資訊，請參閱 [Underlying data access control](access-control-underlying-data.md#data-location-permissions)。

### `DELETE`
<a name="perm-delete"></a>


| 權限 | 在此資源上授予 | 承授者也需要 | 
| --- | --- | --- | 
| DELETE | TABLE | （如果位置已註冊，則不需要額外的 IAM 許可。) | 

具有此許可的主體可以在資料表指定的 Amazon S3 位置插入、更新和讀取基礎資料。委託人也可以在 Lake Formation 主控台上檢視資料表，並使用 AWS Glue API 擷取資料表的相關資訊。

**Example**  
下列範例會將 `DELETE`許可授予`retail` AWS 帳戶 1111-2222-3333 `inventory` 中資料庫資料表`datalake_user1`上的使用者。  

```
aws lakeformation grant-permissions --principal DataLakePrincipalIdentifier=arn:aws:iam::111122223333:user/datalake_user1 --permissions "DELETE" --resource '{ "Table": {"DatabaseName":"retail", "Name":"inventory"}}'
```

此許可僅適用於 Amazon S3 中的資料，不適用於 Amazon Relational Database Service (Amazon RDS) 等其他資料存放區中的資料。

### `DESCRIBE`
<a name="perm-describe"></a>


| 權限 | 在此資源上授予 | 承授者也需要 | 
| --- | --- | --- | 
| DESCRIBE |  資料表資源連結 資料庫資源連結  |  `glue:GetTable` `glue:GetDatabase`  | 
| DESCRIBE | DATABASE | glue:GetDatabase | 
| DESCRIBE | TABLE | glue:GetTable | 
| DESCRIBE | LF-Tag |  `glue:GetTable` `glue:GetDatabase` `lakeformation:GetResourceLFTags` `lakeformation:ListLFTags` `lakeformation:GetLFTag` `lakeformation:SearchTablesByLFTags` `lakeformation:SearchDatabasesByLFTags`  | 

具有此許可的主體可以檢視指定的資料庫、資料表或資源連結。不會隱含授予其他 Data Catalog 許可，也不會隱含授予資料存取許可。資料庫和資料表會出現在整合服務的查詢編輯器中，但除非授予其他 Lake Formation 許可 （例如 `SELECT`)，否則無法對其進行任何查詢。

例如，`DESCRIBE`在資料庫中具有 的使用者可以看到資料庫和所有資料庫中繼資料 （描述、位置等）。不過，使用者無法得知資料庫包含哪些資料表，也無法捨棄、更改或建立資料庫中的資料表。同樣地，在資料表`DESCRIBE`上具有 的使用者可以看到資料表和資料表中繼資料 （描述、結構描述、位置等），但無法捨棄、變更或對資料表執行查詢。

以下是 的一些其他規則`DESCRIBE`：
+ 如果使用者對資料庫、資料表或資源連結具有其他 Lake Formation 許可，`DESCRIBE`則會隱含授予 。
+ 如果使用者`SELECT`只有資料表的欄子集 （部分 `SELECT`)，則使用者只能看到這些欄。
+ 您無法`DESCRIBE`將 授予在資料表上具有部分選取的使用者。相反地，您無法為`DESCRIBE`授予的資料表指定資料欄包含或排除清單。

**Example**  
下列範例將`DESCRIBE`許可授予帳戶 `retail` AWS 1111-2222-3333 `inventory-link` 中資料庫`datalake_user1`的資料表資源連結上的使用者。  

```
aws lakeformation grant-permissions --principal DataLakePrincipalIdentifier=arn:aws:iam::111122223333:user/datalake_user1 --permissions "DESCRIBE" --resource '{ "Table": {"DatabaseName":"retail", "Name":"inventory-link"}}'
```

### `DROP`
<a name="perm-drop"></a>


| 權限 | 在此資源上授予 | 承授者也需要 | 
| --- | --- | --- | 
| DROP | DATABASE | glue:DeleteDatabase | 
| DROP | TABLE | glue:DeleteTable  | 
| DROP | LF-Tag | lakeformation:DeleteLFTag  | 
| DROP |  資料庫資源連結 資料表資源連結  | `glue:DeleteDatabase` `glue:DeleteTable`  | 

具有此許可的主體可以在資料目錄中捨棄資料庫、資料表或資源連結。您無法將資料庫上的 DROP 授予外部帳戶或組織。

**警告**  
捨棄資料庫會捨棄資料庫中的所有資料表。

**Example**  
下列範例會將 `DROP`許可授予 AWS 帳戶 1111-2222-3333 `retail`中資料庫`datalake_user1`的使用者。  

```
aws lakeformation grant-permissions --principal DataLakePrincipalIdentifier=arn:aws:iam::111122223333:user/datalake_user1 --permissions "DROP" --resource '{ "Database": {"Name":"retail"}}'
```

**Example**  
下列範例`DROP`會授予資料庫 `datalake_user1`中 資料表`inventory`上的使用者`retail`。  

```
aws lakeformation grant-permissions --principal DataLakePrincipalIdentifier=arn:aws:iam::111122223333:user/datalake_user1 --permissions "DROP" --resource '{ "Table": {"DatabaseName":"retail", "Name":"inventory"}}'
```

**Example**  
下列範例會將資料庫 `datalake_user1`中資料表資源連結`inventory-link`上的 `DROP`授予使用者`retail`。  

```
aws lakeformation grant-permissions --principal DataLakePrincipalIdentifier=arn:aws:iam::111122223333:user/datalake_user1 --permissions "DROP" --resource '{ "Table": {"DatabaseName":"retail", "Name":"inventory-link"}}'
```

### `INSERT`
<a name="perm-insert"></a>


| 權限 | 在此資源上授予 | 承授者也需要 | 
| --- | --- | --- | 
| INSERT | TABLE | （如果位置已註冊，則不需要額外的 IAM 許可。) | 

具有此許可的主體可以在資料表指定的 Amazon S3 位置插入、更新和讀取基礎資料。委託人也可以在 Lake Formation 主控台中檢視資料表，並使用 AWS Glue API 擷取資料表的相關資訊。

**Example**  
下列範例會將 `INSERT`許可授予 AWS 帳戶 1111-2222-3333 `inventory` 中資料庫`datalake_user1`資料表`retail`上的使用者。  

```
aws lakeformation grant-permissions --principal DataLakePrincipalIdentifier=arn:aws:iam::111122223333:user/datalake_user1 --permissions "INSERT" --resource '{ "Table": {"DatabaseName":"retail", "Name":"inventory"}}'
```

此許可僅適用於 Amazon S3 中的資料，不適用於 Amazon RDS 等其他資料存放區中的資料。

### `SELECT`
<a name="perm-select"></a>


| 權限 | 在此資源上授予 | 承授者也需要 | 
| --- | --- | --- | 
| SELECT |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_tw/lake-formation/latest/dg/lf-permissions-reference.html)  | （如果位置已註冊，則不需要額外的 IAM 許可。) | 

具有此許可的主體可以檢視 Data Catalog 中的資料表，也可以在資料表指定的位置查詢 Amazon S3 中的基礎資料。委託人可以在 Lake Formation 主控台中檢視資料表，並使用 AWS Glue API 擷取資料表的相關資訊。如果在授予此許可時套用資料欄篩選，委託人只能檢視包含資料欄的中繼資料，並且只能從包含的資料欄查詢資料。

**注意**  
整合式分析服務負責在處理查詢時套用資料欄篩選。

**Example**  
下列範例會將 `SELECT`許可授予`retail` AWS 帳戶 1111-2222-3333 `inventory` 中資料庫資料表`datalake_user1`上的使用者。  

```
aws lakeformation grant-permissions --principal DataLakePrincipalIdentifier=arn:aws:iam::111122223333:user/datalake_user1 --permissions "SELECT" --resource '{ "Table": {"DatabaseName":"retail", "Name":"inventory"}}'
```

此許可僅適用於 Amazon S3 中的資料，不適用於 Amazon RDS 等其他資料存放區中的資料。

您可以使用選用的包含清單或排除清單來篩選 （限制對 的存取） 特定資料欄。包含清單會指定可存取的資料欄。排除清單會指定無法存取的資料欄。如果沒有包含或排除清單，則可以存取所有資料表資料欄。

的結果只會`glue:GetTable`傳回發起人有權檢視的資料欄。整合服務，例如 Amazon Athena 和 Amazon Redshift honor 資料欄包含和排除清單。

**Example**  
下列範例`inventory`使用包含清單`SELECT`將 授予資料表`datalake_user1`上的使用者。  

```
aws lakeformation grant-permissions --principal DataLakePrincipalIdentifier=arn:aws:iam::111122223333:user/datalake_user1 --permissions "SELECT"  --resource '{ "TableWithColumns": {"DatabaseName":"retail", "Name":"inventory", "ColumnNames": ["prodcode","location","period","withdrawals"]}}'
```

**Example**  
下一個範例會使用排除清單在`inventory`資料表`SELECT`上授予 。  

```
aws lakeformation grant-permissions --principal DataLakePrincipalIdentifier=arn:aws:iam::111122223333:user/datalake_user1 --permissions "SELECT"  --resource '{ "TableWithColumns": {"DatabaseName":"retail", "Name":"inventory", "ColumnWildcard": {"ExcludedColumnNames": ["intkey", "prodcode"]}}}'
```

下列限制適用於 `SELECT`許可：
+ 授予 時`SELECT`，如果套用資料欄篩選，則無法包含授予選項。
+ 對於屬於分割區索引鍵的資料欄，您無法限制存取控制。
+ 在資料表中資料欄子集上具有 `SELECT`許可的主體，無法獲得該資料表上的 `ALTER`、`DELETE`、 `DROP`或 `INSERT`許可。同樣地，無法在資料表上授予具有 `ALTER`、`DELETE`、 `DROP`或 `INSERT`許可的主體具有資料欄篩選的`SELECT`許可。

`SELECT` 許可一律會以個別資料列的形式出現在 Lake Formation 主控台**的資料許可**頁面上。下圖顯示 `SELECT` 已授予`inventory`資料表中`datalake_user3`所有資料欄的使用者`datalake_user2`和 。

![\[資料許可頁面會顯示四列。第一列和第三列列出資源類型為 的刪除和插入許可 資料表，而第二列和第四列列出資源類型為 Column 的選取許可，以及顯示為 retail.inventory.* 的資源。\]](http://docs.aws.amazon.com/zh_tw/lake-formation/latest/dg/images/data-permissions-dialog-select-cross.png)


### `Super`
<a name="perm-super"></a>


| 權限 | 在此資源上授予 | 承授者也需要 | 
| --- | --- | --- | 
| Super | DATABASE | glue:\$1Database\$1  | 
| Super | TABLE | glue:\$1Table\$1, glue:\$1Partition\$1 | 

此許可允許主體在資料庫或資料表上執行每個支援的 Lake Formation 操作。您無法將資料庫`Super`上的 授予外部帳戶。

此許可可以與其他 Lake Formation 許可共存。例如，您可以授予中繼資料資料表上的 `SELECT`、 `Super`和 `INSERT`許可。主體接著可以在資料表上執行所有支援的操作。當您撤銷 時`Super`， `SELECT`和 `INSERT`許可會保留，委託人只能執行選取和插入操作。

您可以將其授予群組 ，而不是授予`Super`個別委託人`IAMAllowedPrincipals`。`IAMAllowedPrincipals` 群組會自動建立，並包含 IAM 政策允許存取 Data Catalog 資源的所有 IAM 使用者和角色。`Super` 將 Data Catalog 資源`IAMAllowedPrincipals`的存取權授予 時，只有 IAM 政策可有效控制資源的存取。

您可以利用 Lake Formation `IAMAllowedPrincipals` 主控台**的設定**頁面上的選項，讓 自動將新目錄資源的`Super`許可授予 。

![\[資料目錄設定對話方塊具有字幕「新建立的資料庫和資料表的預設許可」，並有兩個核取方塊，如文字中所述。\]](http://docs.aws.amazon.com/zh_tw/lake-formation/latest/dg/images/settings-page.png)

+ 若要`IAMAllowedPrincipals`為所有新資料庫授予 `Super` ，請選取**僅對新資料庫使用 IAM 存取控制**。
+ 若要`IAMAllowedPrincipals`為新資料庫中的所有新資料表授予 `Super` ，請選取**僅對新資料庫中的新資料表使用 IAM 存取控制**。
**注意**  
此選項會導致核取方塊 **在建立資料庫對話方塊中，依預設只針對此資料庫中的新資料表使用 IAM 存取控制**。 ****它什麼都不做。這是**建立資料庫**對話方塊中的核取方塊，可讓 授予 `Super`給 `IAMAllowedPrincipals`。

這些**設定**頁面選項預設為啟用。如需詳細資訊，請參閱下列內容：
+ [變更資料湖的預設設定](change-settings.md)
+ [將AWS Glue資料許可升級到 AWS Lake Formation 模型](upgrade-glue-lake-formation.md)

### `SUPER_USER`
<a name="perm-super-user"></a>


| 權限 | 在此資源上授予 | 承授者也需要 | 
| --- | --- | --- | 
| Super user | Catalog | glue:GetCatalog  | 

您只能將 `Super user`許可授予預設 Data Catalog 內目錄上的特定主體。您無法將預設目錄或其他資源類型的`Super user`許可授予外部帳戶中的主體，例如資料庫和資料表。`Super user` 許可許可允許委託人對授予目錄中的資料庫和資料表執行每個支援的 Lake Formation 操作。

透過 `Super user`許可，委託人 （承授者） 能夠對目錄中的資源 （目錄、資料庫和資料表） 執行下列動作：
+ `CREATE_DATABASE`，目錄上的`DESCRIBE`許可。
+ `DROP`目錄內所有資料庫的 `ALTER`、、`CREATE_TABLE`、 `DESCRIBE`（有效 `SUPER`) 許可。
+ `DROP`目錄內所有資料庫內所有資料表的 `ALTER`、`DESCRIBE`、`SELECT`、`INSERT`、 `DELETE`（有效 `SUPER`) 許可。
+ `All` （有效 SUPER) 目錄內目錄的許可。
+ 授予許可 （將這些許可授予其他主體的能力） 目錄內所有目錄、資料庫和資料表的許可。

透過目錄資源的 `Super user` 許可，承授者不得在目錄上執行或委派 `ALTER`和 `DROP`動作。

### `ASSOCIATE`
<a name="perm-associate"></a>


| 權限 | 在此資源上授予 | 承授者也需要 | 
| --- | --- | --- | 
| ASSOCIATE | LF-Tag |   `glue:GetDatabase` `glue:GetTable`  `lakeformation:AddLFTagsToResource"` `lakeformation:RemoveLFTagsFromResource"` `lakeformation:GetResourceLFTags` `lakeformation:ListLFTags` `lakeformation:GetLFTag` `lakeformation:SearchTablesByLFTags` `lakeformation:SearchDatabasesByLFTags`  | 

在 LF-Tag 具有此許可的主體可以將 LF-Tag 指派給 Data Catalog 資源。`ASSOCIATE` 隱含授予 `DESCRIBE`。

**Example**  
此範例`datalake_user1`使用金鑰 授予使用者 LF-Tag 上的`ASSOCIATE`許可`module`。它授予檢視和指派該索引鍵所有值的許可，如星號 (\$1) 所示。  

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