Lakehouse for Apache Iceberg:使用 IAM 控管存取權

如要管理 Lakehouse for Apache Iceberg 的存取控管,請將使用者新增至 Google Cloud 專案,並指派適當的角色。根據預設,專案只會授予原始建立者存取權。除非使用者成為專案成員或連結至特定資源,否則無法存取資源。

什麼是 IAM?

Google Cloud 提供身分與存取權管理 (IAM) 功能,可對特定 Google Cloud 資源授予更精細的存取權,避免未經授權者存取其他資源。IAM 採用最小權限原則,可確保您僅授予使用者必要的 *Lakehouse* 資源存取權限。

您也可以設定 IAM 政策,控管哪些身分具備哪些資源的權限 (角色)。身分與存取權管理政策可將特定角色授予專案成員,讓對方擁有特定權限。舉例來說,您可以將特定資源 (例如專案) 的 roles/biglake.admin 角色指派給某個 Google 帳戶,這個帳戶就有權控管該專案中的 Lakehouse 資源,但無權管理其他資源。您也可以使用 IAM 管理授予專案團隊成員的基本角色。

使用者的存取控管選項

如要讓使用者建立及管理 Lakehouse 資源,您可以將他們新增為專案或特定資源的團隊成員,並使用 IAM 角色授予權限。

團隊成員可以是具備有效 Google 帳戶的個別使用者、Google 群組、服務帳戶或 Google Workspace 網域。新增專案或資源團隊成員時,您必須指定要授予他們的角色。IAM 提供三種角色類型:預先定義的角色基本角色自訂角色

如要查看各 Lakehouse 角色具備的功能,以及特定角色可授予權限的 API 方法清單,請參閱 Lakehouse IAM 角色

如要瞭解其他成員類型 (例如服務帳戶和群組),請參閱政策繫結參考資料

服務帳戶

當您呼叫 Lakehouse API 在服務所在的專案中執行動作時,Lakehouse 會使用每個目錄的服務代理服務帳戶來代您執行這些動作。Lakehouse 執行階段目錄會使用這些服務帳戶,並在您的專案中獲授予 roles/biglake.serviceAgent 角色。

資源的 IAM 政策

您可以將 IAM 政策直接附加至 Lakehouse 資源 (例如 Lakehouse 服務),授予這些資源的存取權。IAM 政策可讓您管理這些資源上的 IAM 角色,而不是在專案層級管理角色。這樣一來,您就能透過更靈活的方式來落實最小權限原則;例如將協作者的權限侷限在工作需要的特定資源上。

資源同時也會繼承父項資源的政策。如果您在專案層級設定政策,該層級的所有子項資源都會繼承這項政策。會對資源發揮作用的政策,除了在資源層級設定的政策外,還包括資源從上層階級繼承的政策。詳情請參閱 IAM 政策階層

您可以使用 Google Cloud 控制台、Identity and Access Management API 或 Google Cloud CLI,取得及設定 IAM 政策。

後續步驟