POSIX グループの作成と削除

このドキュメントでは、POSIX グループを作成および削除する方法について説明します。

始める前に

次の作業を実施した後、このページの内容に進んでください。

POSIX グループの作成

POSIX グループは、既存の Google グループから作成するか、新しい Google グループを作成して POSIX 情報を追加します。

既存の Google グループから POSIX グループを作成する

次の例に、既存の Google グループから POSIX グループを作成する方法を示します。

gcloud

既存の Google グループを POSIX グループに更新するには、gcloud beta identity groups update コマンドを使用します。

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 グループに更新するには、POSIX グループ フィールドを指定して groups.patch() メソッドを呼び出します。

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

POSIX グループを作成するには、gcloud beta identity groups create コマンドを使用します。

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 グループに更新するには、POSIX グループ フィールドを指定して groups.patch() メソッドを呼び出します。

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

{
  "posixGroups": []
}

以下を置き換えます。

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 グループの取得と一覧表示をご覧ください。