创建和删除 POSIX 群组
本文档介绍了如何创建和删除 POSIX 群组。
准备工作
在继续此页面的信息之前,请先执行以下任务:
创建 POSIX 群组
您可以通过现有 Google 群组来创建 POSIX 群组,也可以通过创建新的 Google 群组并添加 POSIX 信息来创建 POSIX 群组。
通过现有 Google 群组创建 POSIX 群组
以下示例展示如何通过现有 Google 群组创建 POSIX 群组:
gcloud
使用 gcloud beta identity groups update
命令将现有 Google 群组更新为 POSIX 群组:
gcloud beta identity groups update EMAIL \ --add-posix-group=gid=GROUP_ID,name=POSIX_NAME
请替换以下内容:
EMAIL
:要更新的群组的电子邮件地址GROUP_ID
:您要分配给 POSIX 群组的群组 ID (GID)POSIX_NAME
:您要分配给 POSIX 群组的名称
REST
如需将 Google 群组更新为 POSIX 群组,请调用 groups.patch()
方法,并指定 POSIX 群组字段。
PATCH 'https://cloudidentity.googleapis.com/v1beta1/groups/GROUP_RESOURCE_NAME?updateMask=posix_group { "posixGroups": [ { "name": "POSIX_NAME", "gid": GROUP_ID } ] }
请替换以下内容:
GROUP_RESOURCE_NAME
:Google 群组的资源名称。如需查找实例组的资源名称,请运行gcloud identity groups describe
命令POSIX_NAME
:您要分配给 POSIX 群组的名称GROUP_ID
:您要分配给 POSIX 群组的群组 ID (GID)
Python
以下示例展示了使用 Python 客户端库将 Google 群组更新为 POSIX 群组的辅助函数:
def add_posix_group_data_to_group(service, group_name, posix_name, posix_gid):
group = {
"posix_groups": [
{
"name": posix_name,
"gid": posix_gid,
}
]
}
try:
request = service.groups().patch(name=group_name, body=group)
request.uri = request.uri + '&updateMask=posix_groups'
response = request.execute()
print(response)
except Exception as e:
print(e)
通过新的 Google 群组创建 POSIX 群组
以下示例展示如何通过新的 Google 群组创建 POSIX 群组:
gcloud
使用 gcloud beta identity groups create
命令创建 POSIX 群组:
gcloud beta identity groups create EMAIL \ --organization=ORGANIZATION_ID \ --labels=cloudidentity.googleapis.com/groups.discussion_forum \ --posix-group=gid=GROUP_ID,name=POSIX_NAME
请替换以下内容:
EMAIL
:要创建的群组的电子邮件地址ORGANIZATION_ID
:群组所属的组织。ID(“123456789”)或关联的网域(“example.com”)。GROUP_ID
:您为群组设置的群组 ID (GID)POSIX_NAME
:您为群组设置的名称
REST
如需创建群组,请使用新群组的电子邮件地址、组织 ID、POSIX 群组和标签调用 groups.create()
方法。
POST 'https://cloudidentity.googleapis.com/v1beta1/groups?initialGroupConfig=WITH_INITIAL_OWNER { "parent": "customers/CUSTOMER_ID", "groupKey": {"id": "EMAIL"}, "labels": {"cloudidentity.googleapis.com/groups.discussion_forum": ""}, "posixGroups": [ { "name": "POSIX_NAME", "gid": GROUP_ID, } ] }
请替换以下内容:
initialGroupConfig=WITH_INITIAL_OWNER
:?initialGroupConfig=WITH_INITIAL_OWNER
或留空。任何空群组只能由组织管理员创建。CUSTOMER_ID
:您的组织的客户 ID。如需查找客户 ID,请运行gcloud organizations list
命令EMAIL
:要创建的群组的电子邮件地址POSIX_NAME
:您要分配给 POSIX 群组的名称GROUP_ID
:您要分配给 POSIX 群组的群组 ID (GID)
Python
以下示例展示了使用 Python 客户端库创建 POSIX 群组的辅助函数:
def create_posix_group(customer_id, email, query, posix_name, posix_gid):
service = build_service()
groupDef = {
"parent": "customerId/{}".format(customer_id),
"groupKey": {"id": email},
"labels": {"cloudidentity.googleapis.com/groups.discussion_forum": ""},
"posixGroups": [
{
"name": posix_name,
"gid": posix_gid,
}
]
}
request = service.groups().create(body=groupDef)
request.uri += "&initialGroupConfig=WITH_INITIAL_OWNER"
response = request.execute()
return response
删除 POSIX 群组
以下示例展示如何从 Google 群组中移除 POSIX 信息。
gcloud
使用 gcloud beta identity groups update
命令并指定值为 GROUP_ID
或 POSIX_NAME
的 --remove-posix-groups
标志:
gcloud beta identity groups update \ EMAIL \ --remove-posix-groups=GROUP_ID_or_POSIX_NAME
请替换以下内容:
EMAIL
:要删除的群组的电子邮件地址GROUP_ID_or_POSIX_NAME
:要删除的群组的群组 ID 或 POSIX 群组名称
REST
如需将 Google 群组更新为 POSIX 群组,请调用 groups.patch()
方法,并指定 POSIX 群组字段。
PATCH 'https://cloudidentity.googleapis.com/v1beta1/groups/GROUP_RESOURCE_NAME?updateMask=posix_group { "posixGroups": [] }
请替换以下内容:
GROUP_RESOURCE_NAME
:Google 群组的资源名称。如需查找实例组的资源名称,请运行gcloud identity groups describe
命令
Python
以下示例展示了使用 Python 客户端库将 Google 群组更新为 POSIX 群组的辅助函数:
def remove_posix_data_from_group(service, group_name, posix_name, posix_gid):
group = {
"posix_groups": []
}
try:
request = service.groups().patch(name=group_name, body=group)
request.uri = request.uri + '&updateMask=posix_groups'
response = request.execute()
print(response)
except Exception as e:
print(e)
后续步骤
POSIX 群组存在后,您可以检索它并列出其成员资格。如需了解详情,请参阅检索和列出 POSIX 群组。