您可以为组织或项目授予和限制对 Vertex AI Workbench 的访问权限。为此,您可以使用 GDCHRestrictedService 政策类型定义组织政策,以便限制您可以在 Google Distributed Cloud (GDC) 气隙环境中使用的服务。应用后,该政策会阻止使用其引用的 API。
例如,您可以使用此政策类型将 Vertex AI Workbench 的使用限制为特定项目。只有非受限的组织或项目可以创建或更新 JupyterLab 笔记本。您还可以使用该政策完全限制对 Vertex AI Workbench 服务的访问权限,因为您希望在允许团队使用该服务之前先运行测试。
本页面介绍了如何使用 GDCHRestrictedService 政策类型授予和限制对 Vertex AI Workbench 的访问权限。如需详细了解组织政策以及如何修改 GDCHRestrictedService 组织政策,请参阅配置组织政策。
准备工作
如需获得授予或限制组织或项目对 Vertex AI Workbench 的访问权限所需的权限,请让您的组织 IAM 管理员为您授予 GDC Restricted Service Policy Admin (
gdchrestrictedservice-policy-admin) 集群角色。此角色未绑定到命名空间。 如需详细了解此角色,请参阅准备 IAM 权限。定义管理 API 服务器 kubeconfig 的路径:
export KUBECONFIG=MANAGEMENT_API_SERVER_KUBECONFIG
创建限制
以下部分介绍了如何创建、更新、删除和查看项目命名空间内特定服务的限制。
创建或更新限制
如需为组织创建或更新限制,请运行以下命令:
kubectl --kubeconfig=${KUBECONFIG} apply -f - <<EOF apiVersion: constraints.gatekeeper.sh/v1beta1 kind: GDCHRestrictedService metadata: name: NAME spec: match: scope: "Namespaced" namespaces: PROJECT_NAMESPACE kinds: - apiGroups: - "aiplatform.gdc.goog" kinds: - Notebook EOF
删除限制
如需删除限制,请运行以下命令:
kubectl delete GDCHRestrictedService NAME
描述限制
如需描述限制,请运行以下命令:
kubectl describe GDCHRestrictedService NAME
限制组织对 Vertex AI Workbench 的访问权限
如需限制组织对 Vertex AI Workbench 的访问权限,请通过向政策的 kinds 字段添加 aiplatform.gdc.goog API 组和 Notebook 种类来修改 GDCHRestrictedService 政策类型。
以下示例展示了当您限制整个组织对 Vertex AI Workbench 的访问权限时,kinds 字段在 GDCHRestrictedService 政策类型中的显示方式:
apiVersion: constraints.gatekeeper.sh/v1beta1
kind: GDCHRestrictedService
metadata:
name: restrict-notebook-for-organization
spec:
match:
scope: "Namespaced"
kinds:
- apiGroups:
- "aiplatform.gdc.goog"
kinds:
- Notebook
[...]
如需恢复组织的 Vertex AI Workbench 访问权限,请参阅为组织授予 Vertex AI Workbench 访问权限。
限制对项目的 Vertex AI Workbench 的访问权限
如需限制对项目的 Vertex AI Workbench 的访问权限,请修改 GDCHRestrictedService 政策类型,方法是将 aiplatform.gdc.goog API 组和 Notebook 种类添加到项目命名空间的政策的 kinds 字段中。
与限制组织访问权限的不同之处在于,您必须指定政策应影响的命名空间。向政策添加 namespaces 字段,并指定您的项目命名空间。
以下示例展示了当您限制对某个项目的 Vertex AI Workbench 的访问权限时,GDCHRestrictedService 政策类型中的 kinds 字段会是什么样子:
apiVersion: constraints.gatekeeper.sh/v1beta1
kind: GDCHRestrictedService
metadata:
name: restrict-notebook-for-organization
spec:
match:
scope: "Namespaced"
namespaces: [PROJECT_NAMESPACE]
kinds:
- apiGroups:
- "aiplatform.gdc.goog"
kinds:
- Notebook
[...]
将 PROJECT_NAMESPACE 替换为要限制对 Vertex AI Workbench 的访问权限的项目的命名空间。
为组织授予对 Vertex AI Workbench 的访问权限
默认情况下,Distributed Cloud 组织可以访问 Vertex AI Workbench。不过,如果您限制了组织对 Vertex AI Workbench 的访问权限,则可以重新授予访问权限。
如需向组织中的所有项目授予对 Vertex AI Workbench 的访问权限,请按以下步骤操作:
确定组织中的
GDCHRestrictedService政策类型。在政策中找到
aiplatform.gdc.googAPI 组和Notebook种类。如果
aiplatform.gdc.googAPI 组和Notebookkind 是政策的kinds字段中的唯一内容,请删除GDCHRestrictedService资源。如果
GDCHRestrictedService政策包含其他受限服务,请从kinds字段中移除aiplatform.gdc.googAPI 组和Notebook种类,然后保存对政策所做的更改。