動的グループの作成と更新

このページでは、動的グループを作成、更新する方法について説明します。

始める前に

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

動的グループの作成

動的グループを作成する例を次に示します。

REST

動的グループを作成するには、そのグループのインスタンスを指定して groups.create() を呼び出します。グループのインスタンスには、グループの入力に使用されたクエリを dynamicGroupMetadata に含める必要があります。

Python

動的グループを作成するには、グループのインスタンスを指定して service.groups().create メソッドを呼び出します。グループのインスタンスには、グループの入力に使用されたクエリを dynamicGroupMetadata に含める必要があります。次のサンプルは、エンジニアリング部門に存在するすべてのユーザーを含む動的グループを作成する方法を示しています。

def create_dynamic_group(customer_id, email, query):
  service = build_service()
  groupDef = {
      "parent": "customerId/{}".format(customer_id),
      "groupKey": {"id": email},
      "labels": {"cloudidentity.googleapis.com/groups.discussion_forum": ""},
      "dynamicGroupMetadata": {
          "queries": [
              {
                  "resourceType": "USER",
                  "query": "user.organizations.exists(org, org.department=='engineering')"
              }
          ]
      }
  }
  request = service.groups().create(body=groupDef)
  request.uri += "&initialGroupConfig=EMPTY"
  response = request.execute()
  return response

動的グループの更新

動的グループを更新する例を次に示します。

REST

動的グループを更新するには、そのグループのインスタンスを指定して groups.patch() を呼び出します。グループのインスタンスには、グループの入力に使用された新しいクエリを dynamicGroupMetadata に含める必要があります。

Python

動的グループを更新するには、更新するグループの名前と、グループのインスタンスを指定して service.groups().patch メソッドを呼び出します。グループのインスタンスには、グループの入力に使用されたクエリを dynamicGroupMetadata に含める必要があります。次のサンプルでは、エンジニアリング部門のすべてのユーザーを含む動的グループを、エンジニアリング部門または財務部門のすべてのユーザーを含むグループに更新する方法を示しています。

# name (i.e. groups/01234abcdeef) uniquely identifies the group
def update_dynamic_group(name, query):
  service = build_service()
  groupDef = {
    "dynamicGroupMetadata": {
    "queries": [
        {
          "resourceType": "USER",
          "query": "user.organizations.exists(org, org.department=='engineering' || org.department=='finance')"
        }
      ]
    }
  }
  request = service.groups().patch(name=name, body=groupDef)
  request.uri += "&updateMask=dynamicGroupMetadata"
  response = request.execute()

  return response

次のステップ

動的グループが作成されると、そのグループを取得してメンバーを一覧表示できます。詳細については、動的グループの取得とメンバーの一覧表示をご覧ください。