服務提供者可以使用 VMware Cloud Director API 建立延伸,以向承租人提供其他 VMware Cloud Director 功能。如果服務提供者授與您存取權,您可以管理已定義的實體並與其他承租人共用這些實體。
服務提供者可以建立執行階段定義的實體類型,從而允許延伸在 VMware Cloud Director 中儲存及操縱延伸特定資訊。例如,Kubernetes 延伸可以在執行階段定義的實體中儲存所管理的 Kubernetes 叢集的相關資訊。然後,此延伸可提供延伸 API,從而使用執行階段定義的實體中的資訊管理這些叢集。如果服務提供者與您共用執行階段定義的實體類型的權限服務包,則您可以建立該類型的執行個體。
在一個承租人組織中建立定義的實體時,無法與另一個組織中的承租人共用該定義的實體。您無法將定義的實體的擁有者變更為另一個組織中的使用者。
存取定義的實體
兩個互補機制控制執行階段定義的實體的存取權。
-
權限 - 當服務提供者建立執行階段定義的實體類型時,會為此類型建立權限服務包。服務提供者必須為您指派以下五個特定於類型的權限中的一或多個:檢視:TYPE、編輯:TYPE、完全控制:TYPE、管理員檢視:TYPE以及管理員完全控制:TYPE。
檢視:TYPE、編輯:TYPE 和完全控制:TYPE 權限僅與 ACL 項目組合使用。
- 存取控制清單 (ACL) - ACL 資料表包含的項目定義了使用者對系統中特定實體具有的存取權。對實體提供了額外層級的控制。例如,如果編輯:TYPE 權限指定使用者可以修改其有權存取的實體,ACL 資料表會定義使用者可存取的實體。
實體作業 | 選項 | 描述 | |
---|---|---|---|
讀取 | 管理員檢視:TYPE 權限 | 具有此權限的使用者可以查看組織內此類型的所有執行階段定義的實體。 | |
檢視:TYPE 權限和 ACL 項目 >= 檢視 | 具有此權限和讀取層級 ACL 的使用者可以檢視此類型的執行階段定義的實體。 | ||
修改 | 管理員完全控制:TYPE 權限 | 具有此權限的使用者可以在所有組織中建立、檢視、修改和刪除此類型的執行階段定義的實體。 | |
編輯:TYPE 權限和 ACL 項目 >= 變更 | 具有此權限和修改層級 ACL 的使用者可以建立、檢視和修改此類型的執行階段定義的實體。 | ||
刪除 | 管理員完全控制:TYPE 權限 | 具有此權限的使用者可以在所有組織中建立、檢視、修改和刪除此類型的執行階段定義的實體。 | |
完全控制:TYPE 權限和 ACL 項目 = 完全控制 | 具有此權限和完全控制層級 ACL 的使用者可以建立、檢視、修改和刪除此類型的執行階段定義的實體。 |
與其他使用者共用定義的實體
如果系統管理員為已定義的實體類型發佈了權限服務包並授與您 ReadWrite
或 FullControl
權限,或者您是已定義實體的擁有者,則您可以與其他使用者共用這些實體的存取權。
-
將服務包中的檢視:TYPE、編輯:TYPE 或完全控制:TYPE 權限指派給要對已定義實體擁有特定層級存取權的使用者角色。
備註: 您必須以 系統管理員或 組織管理員的身分登入以指派權限。例如,如果您希望具有 tkg_viewer 角色的使用者能夠檢視組織內的 Tanzu Kubernetes 叢集,則必須將檢視:Tanzu Kubernetes 客體叢集權限新增至該角色。如果您希望具有 tkg_author 角色的使用者能夠建立、檢視和修改此組織內的 Tanzu Kubernetes 叢集,請將編輯:Tanzu Kubernetes 客體叢集新增至該角色。如果您希望具有 tkg_admin 角色的使用者能夠建立、檢視、修改和刪除此組織內的 Tanzu Kubernetes 叢集,請將完全控制:Tanzu Kubernetes 客體叢集權限新增至該角色。
-
透過執行下列 REST API 呼叫,為特定使用者授與存取控制清單 (ACL)。
POST https://[address]/cloudapi/1.0.0/entities/urn:vcloud:entity:[vendor]:[type name]:[version]:[UUID]/accessControls { "grantType" : "MembershipAccessControlGrant", "accessLevelId" : "urn:vcloud:accessLevel:[Access_level]", "memberId" : "urn:vcloud:user:[User_ID]" }
Access_level 必須為
ReadOnly
、ReadWrite
或FullControl
。User_ID 必須為要授與已定義實體之存取權的使用者識別碼。您必須對實體具有
ReadWrite
或FullControl
權限,才能向該實體授與 ACL 存取權。具有 tkg_viewer 角色的使用者 (範例中所述) 無法授與 ACL 存取權。具有 tkg_author 或 tkg_admin 角色的使用者可以與具有 tkg_viewer、tkg_author 或 tkg_admin 角色的使用者共用對 VMWARE:TKGCLUSTER 實體的存取權,方法是使用 API 請求為這些使用者授與 ACL 存取權。
具有管理員完全控制:Tanzu Kubernetes 客體叢集權限的使用者可以向任何 VMWARE:TKGCLUSTER 實體授與 ACL 存取權。
您也可以使用 REST API 呼叫撤銷存取權或檢視擁有實體存取權的使用者。請參閱 VMware Cloud Director REST API 說明文件,網址為:https://developer.vmware.com/。
變更已定義實體的擁有者
已定義實體的擁有者或具有管理員完全控制:TYPE 權限的使用者,可透過更新已定義的實體模型並以新擁有者的識別碼變更擁有者欄位,將擁有權轉移給其他使用者。