您可以为组织或项目授予和限制对 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 受限服务政策管理员 (
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种类,然后保存对政策所做的更改。