本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
使用具名資源方法授予資料庫許可
下列步驟說明如何使用具名資源方法授予資料庫許可。
- Console
-
使用 Lake Formation 主控台上的授予資料湖許可頁面。頁面分為下列區段:
-
委託人 – IAM 使用者、角色、IAM Identity Center 使用者和群組、SAML 使用者和群組、 AWS 帳戶、組織或組織單位以授予許可。
-
LF 標籤或目錄資源 – 授予許可的資料庫、資料表、檢視或資源連結。
-
許可 – 要授予的 Lake Formation 許可。
注意
若要授予資料庫資源連結的許可,請參閱 授予資源連結許可。
開啟授予資料湖許可頁面。
在 https://https://console.aws.amazon.com/lakeformation/
開啟 AWS Lake Formation 主控台,並以資料湖管理員、資料庫建立者或對資料庫具有可授予許可的 IAM 使用者身分登入。 執行以下任意一項:
-
在導覽窗格中的許可下,選擇 Data lake 許可。然後選擇 授予。
-
在導覽窗格中,選擇 Data Catalog 下的資料庫。然後,在資料庫頁面中,選擇資料庫,然後從動作功能表的許可下,選擇授予。
注意
您可以透過資料庫的資源連結授予許可。若要這樣做,請在資料庫頁面上選擇資源連結,然後在動作功能表上選擇對目標授予。如需詳細資訊,請參閱資源連結在 Lake Formation 中如何運作。
-
-
接下來,在主體區段中,選擇主體類型,然後指定要授予許可的主體。
- IAM 使用者和角色
-
從 IAM 使用者和角色清單中選擇一或多個使用者或角色。
- IAM Identity Center
-
從使用者和群組清單中選擇一或多個使用者或群組。選取新增以新增更多使用者或群組。
- SAML 使用者和群組
-
對於 SAML 和 Amazon QuickSight 使用者和群組,輸入透過 SAML 聯合的使用者或群組的一或多個 Amazon Resource Name (ARNs),或 Amazon QuickSight 使用者或群組ARNs。在每個 ARN 之後按 Enter。
如需如何建構 ARNs 的資訊,請參閱 Lake Formation 授予和撤銷 AWS CLI 命令。
注意
Lake Formation 與 Amazon QuickSight 的整合僅支援 Amazon QuickSight Enterprise Edition。
- 外部帳戶
-
針對 AWS 帳戶、 AWS organization 或 IAM Principal,輸入一或多個有效的 AWS 帳戶 IDs、組織 IDs、組織單位 IDs 或 IAM 使用者或角色的 ARN。在每個 ID 之後按 Enter。
組織 ID 包含「o-」,後面接著 10–32 個小寫字母或數字。
組織單位 ID 以「ou-」開頭,後面接著 4-32 個小寫字母或數字 (包含 OU 的根 ID)。此字串後面接著第二個「-」破折號和 8 到 32 個額外的小寫字母或數字。
-
在 LF 標籤或目錄資源區段中,選擇具名資料目錄資源。
-
從資料庫清單中選擇一或多個資料庫。您也可以選擇一或多個資料表和/或資料篩選條件。
-
在許可區段中,選取許可和可授予的許可。在資料庫許可下,選取要授予的一或多個許可。
注意
在具有指向已註冊位置之位置屬性的資料庫
Alter
上授予Create Table
或 之後,請務必同時將位置上的資料位置許可授予委託人。如需詳細資訊,請參閱授予資料位置許可。 -
(選用) 在可授予許可下,選取授予收件人可以授予其 AWS 帳戶中其他主體的許可。當您從外部帳戶將許可授予 IAM 主體時,不支援此選項。
-
選擇 Grant (授予)。
-
- AWS CLI
-
您可以使用具名資源方法和 AWS Command Line Interface () 授予資料庫許可AWS CLI。
使用 授予資料庫許可 AWS CLI
-
執行
grant-permissions
命令,並指定資料庫或 Data Catalog 做為資源,視授予的許可而定。在下列範例中,將
<account-id>
取代為有效的 AWS 帳戶 ID。範例 – 授予 以建立資料庫
此範例
CREATE_DATABASE
會授予使用者datalake_user1
。由於授予此許可的資源是 Data Catalog,因此 命令會指定空CatalogResource
結構做為resource
參數。aws lakeformation grant-permissions --principal DataLakePrincipalIdentifier=arn:aws:iam::
<account-id>
:user/datalake_user1 --permissions "CREATE_DATABASE" --resource '{ "Catalog": {}}'範例 – 授予以在指定的資料庫中建立資料表
下一個範例會將資料庫
CREATE_TABLE
上的 授予retail
使用者datalake_user1
。aws lakeformation grant-permissions --principal DataLakePrincipalIdentifier=arn:aws:iam::
<account-id>
:user/datalake_user1 --permissions "CREATE_TABLE" --resource '{ "Database": {"Name":"retail"}}'範例 – 使用授予選項授予外部 AWS 帳戶
下一個範例
CREATE_TABLE
使用 資料庫上的授予選項,將 授予retail
外部帳戶 1111-2222-3333。aws lakeformation grant-permissions --principal DataLakePrincipalIdentifier=111122223333 --permissions "CREATE_TABLE" --permissions-with-grant-option "CREATE_TABLE" --resource '{ "Database": {"Name":"retail"}}'
範例 – 授予組織
下一個範例
ALTER
會將資料庫上的授予選項授予issues
組織o-abcdefghijkl
。aws lakeformation grant-permissions --principal DataLakePrincipalIdentifier=arn:aws:organizations::111122223333:organization/o-abcdefghijkl --permissions "ALTER" --permissions-with-grant-option "ALTER" --resource '{ "Database": {"Name":"issues"}}'
範例 - 授予相同帳戶中
ALLIAMPrincipals
的下一個範例會將資料庫的
CREATE_TABLE
許可授予相同帳戶中retail
的所有主體。此選項可讓帳戶中的每個主體在資料庫中建立資料表,並建立資料表資源連結,允許整合查詢引擎存取共用資料庫和資料表。當委託人收到跨帳戶授予,且沒有建立資源連結的許可時,此選項特別有用。在此案例中,資料湖管理員可以建立預留位置資料庫,並將CREATE_TABLE
許可授予ALLIAMPrincipal
群組,讓帳戶中的每個 IAM 主體都能在預留位置資料庫中建立資源連結。aws lakeformation grant-permissions --principal DataLakePrincipalIdentifier=111122223333:IAMPrincipals --permissions "CREATE_TABLE" --resource '{ "Database": {"Name":"temp","CatalogId":"111122223333"}}'
範例 - 授予外部帳戶中
ALLIAMPrincipals
的下一個範例會將資料庫
CREATE_TABLE
上的 授予外部帳戶中retail
的所有主體。此選項可讓帳戶中的每個主體在資料庫中建立資料表。aws lakeformation grant-permissions --principal DataLakePrincipalIdentifier=111122223333:IAMPrincipals --permissions "CREATE_TABLE" --resource '{ "Database": {"Name":"retail","CatalogId":"123456789012"}}'
注意
在具有指向已註冊位置之位置屬性的資料庫
ALTER
上授予CREATE_TABLE
或 之後,請務必同時將位置上的資料位置許可授予委託人。如需詳細資訊,請參閱授予資料位置許可。 -