通过配置 GDCHRestrictedService 组织政策,您可以控制对 Google Distributed Cloud (GDC) 网闸隔离配置中的 Vertex AI Workbench 的访问权限。应用后,此政策会屏蔽其引用的 API,以便只有不受限制的组织或项目才能创建和更新 JupyterLab 笔记本。在测试期间,您可以将 Vertex AI Workbench 限制在特定项目中使用,或限制整个组织的访问权限。
如需详细了解组织政策,请参阅配置组织政策。
准备工作
如需获得为组织或项目授予或限制对 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 的访问权限,请修改 GDCHRestrictedService 政策类型,方法是将 aiplatform.gdc.goog API 群组和 Notebook 种类添加到政策的 kinds 字段。
以下示例展示了当您限制整个组织对 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 的访问权限时,kinds 字段在 GDCHRestrictedService 政策类型中的显示方式:
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 组和Notebook种类是政策的kinds字段中的唯一内容,请删除GDCHRestrictedService资源。如果
GDCHRestrictedService政策包含其他受限服务,请从kinds字段中移除aiplatform.gdc.googAPI 组和Notebook种类,然后保存对政策所做的更改。