本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
使用具名資源方法授予資料庫許可
下列步驟說明如何使用具名資源方法授予資料庫許可。
- Console
-
使用 Lake Formation 主控台上的授予資料湖許可頁面。頁面分為下列區段:
-
主體 – IAM使用者、角色、IAM身分中心使用者和群組、SAML使用者和群組、 AWS 帳戶、組織或組織單位以授予許可。
-
LF 標籤或目錄資源 – 授予許可的資料庫、資料表、檢視或資源連結。
-
許可:要授予的 Lake Formation 許可。
注意
若要授予資料庫資源連結的許可,請參閱 授予資源連結許可。
開啟授予資料湖許可頁面。
在 開啟 AWS Lake Formation 主控台https://console.aws.amazon.com/lakeformation/
,並以資料湖管理員、資料庫建立者或資料庫上具有許可IAM許可的使用者身分登入。 執行以下任意一項:
-
在導覽窗格中的許可 下,選擇 Data lake 許可 。然後選擇授予 。
-
在導覽窗格中,選擇 Data Catalog 下的資料庫。然後,在資料庫頁面上,選擇資料庫,然後從 許可 下的動作 選單中,選擇授予 。
注意
您可以透過資料庫的資源連結授予許可。若要這麼做,請在資料庫頁面上,選擇資源連結,然後在動作功能表中,選擇目標 上的授予。如需詳細資訊,請參閱資源連結在 Lake Formation 中如何運作。
-
-
接下來,在主體區段中,選擇主體類型,然後指定要授予許可的主體。
- IAM 使用者和角色
-
從使用者和角色清單中選擇一或多個IAM使用者或角色。
- IAM 身分中心
-
從使用者和群組清單中選擇一或多個使用者或群組。選取新增以新增更多使用者或群組。
- SAML 使用者和群組
-
對於 SAML 和 Amazon QuickSight 使用者和群組 ,輸入透過 聯合的使用者或群組的一或多個 Amazon Resource Names (ARNs)SAML,或ARNs輸入 Amazon QuickSight 使用者或群組的一或多個 Amazon Resource Names ()。在每個 之後按 EnterARN。
如需有關如何建構 的資訊ARNs,請參閱 Lake Formation 授予和撤銷 AWS CLI 命令。
注意
Amazon QuickSight Enterprise Edition 僅 QuickSight 支援 Lake Formation 與 Amazon 的整合。
- 外部帳戶
-
針對 AWS 帳戶、 AWS organization 或 IAM Principal,輸入一或多個有效的 AWS 帳戶IDs、組織 IDsIDs、組織單位 或ARNIAM使用者或角色。在每個 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
命令,並根據授予的許可,指定資料庫或資料目錄作為資源。在下列範例中,取代
<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
或 後,請務必同時將位置上的資料位置許可授予委託人。如需詳細資訊,請參閱授予資料位置許可。 -