Creating and deleting POSIX groups

This document explains how to create and delete a POSIX group.

Before you begin

Perform the following tasks before proceeding with the information on this page:

Creating a POSIX group

You can create a POSIX group from an existing Google group, or by creating a new Google group and adding POSIX information.

Creating a POSIX group from an existing Google group

The following examples show how to create a POSIX group from an existing Google group:

gcloud

Use the gcloud beta identity groups update command to update an existing Google group to a POSIX group:

gcloud beta identity groups update EMAIL 
\
   --add-posix-group=gid= GROUP_ID 
,name= POSIX_NAME 

Replace the following:

  • EMAIL : the email address of the group to update
  • GROUP_ID : the group ID (GID) you want to assign to the POSIX group
  • POSIX_NAME : the name you want to assign to the POSIX group

REST

To update a Google Group to a POSIX group, call the groups.patch() method with the POSIX groups field specified.

PATCH 'https://cloudidentity.googleapis.com/v1beta1/groups/ GROUP_RESOURCE_NAME 
?updateMask=posix_group

{
  "posixGroups": [
    {
      "name": " POSIX_NAME 
",
      "gid": GROUP_ID 
}
  ]
}

Replace the following:

  • GROUP_RESOURCE_NAME : the resource name of the Google group. To find a group's resource name, run the gcloud identity groups describe command
  • POSIX_NAME : the name you want to assign to the POSIX group
  • GROUP_ID : the group ID (GID) you want to assign to the POSIX group

Python

The following example shows a helper function to update a Google Group to a POSIX group using the Python client library:

  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 
 ) 
 

Creating a POSIX group from a new Google group

The following examples show how to create a POSIX group from a new Google group:

gcloud

Use the gcloud beta identity groups create command to create a POSIX group:

gcloud beta identity groups create EMAIL 
\
  --organization= ORGANIZATION_ID 
\
  --labels=cloudidentity.googleapis.com/groups.discussion_forum \
  --posix-group=gid= GROUP_ID 
,name= POSIX_NAME 

Replace the following:

  • EMAIL : the email address of the group to be created
  • ORGANIZATION_ID : the organization the group belongs to. Either an ID ("123456789") or the associated domain ("example.com").
  • GROUP_ID : the group ID (GID) you set for the group
  • POSIX_NAME : the name you set for the group

REST

To create a group, call the groups.create() method with the email address, organization ID, POSIX groups, and labels for the new group.

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 
,
  }
]
}

Replace the following:

  • initialGroupConfig=WITH_INITIAL_OWNER : Either ?initialGroupConfig=WITH_INITIAL_OWNER or empty. Any empty group can only be created by organization admins.
  • CUSTOMER_ID : the customer ID for your organization. To find the customer ID run the gcloud organizations list command
  • EMAIL : the email address of the group to be created
  • POSIX_NAME : the name you want to assign to the POSIX group
  • GROUP_ID : the group ID (GID) you want to assign to the POSIX group

Python

The following example shows a helper function to create a POSIX group using the Python client library:

  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 
 

Deleting a POSIX group

The following examples show how to remove POSIX information from a Google group.

gcloud

Use the gcloud beta identity groups update command and specify the --remove-posix-groups flag with the GROUP_ID or POSIX_NAME value:

gcloud beta identity groups update \ EMAIL 
\
   --remove-posix-groups= GROUP_ID_or_POSIX_NAME 

Replace the following:

  • EMAIL : the email address of the group to be deleted
  • GROUP_ID_or_POSIX_NAME : the group ID or POSIX group name of the group to be deleted

REST

To update a Google Group to a POSIX group, call the groups.patch() method with the POSIX groups field specified.

PATCH 'https://cloudidentity.googleapis.com/v1beta1/groups/ GROUP_RESOURCE_NAME 
?updateMask=posix_group

{
  "posixGroups": []
}

Replace the following:

Python

The following example shows a helper function to update a Google Group to a POSIX group using the Python client library:

  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 
 ) 
 

What's next

After the POSIX group exists, you can retrieve it and list its memberships. For more information, see Retrieving and listing POSIX groups .

Create a Mobile Website
View Site in Mobile | Classic
Share by: