Mitgliedschaften für Google Groups verwalten

Sobald eine Gruppe vorhanden ist, können Sie Mitgliedschaften für die Gruppe erstellen. Auf dieser Seite wird erläutert, wie Sie einige grundlegende Mitgliedschaftsvorgänge mit der Cloud Identity Groups API ausführen. Weitere Informationen zum Erstellen von Google-Gruppen finden Sie unter Google Groups-Gruppen erstellen und suchen.

Hinweise

Einer Google-Gruppe eine Mitgliedschaft hinzufügen

REST

Verwenden Sie die Methode memberships.create, um einer Gruppe ein Mitglied hinzuzufügen.

Bevor Sie die Anfragedaten verwenden, ersetzen Sie die folgenden Werte:

  • GROUP_ID: Die numerische ID der Gruppe, der Sie ein Mitglied hinzufügen möchten. Verwenden Sie die Methode groups.lookup, um die ID einer einzelnen Gruppe zu ermitteln. Verwenden Sie die Methode groups.list, um alle Gruppen-IDs unter einem Kunden oder Namespace anzusehen.
  • MEMBER_ID: ID des Mitglieds Verwenden Sie für von Google verwaltete Entitäten die E-Mail-Adresse des Mitglieds. Verwenden Sie für Entitäten mit Zuordnung externer Identitäten einen String, der die Anforderungen der Identitätsquelle erfüllt.
  • ROLE_NAME: Der Name der Rolle, die Sie dem Mitglied zuweisen möchten. Verwenden Sie OWNER, MANAGER oder MEMBER.
  • PROJECT_ID: Die alphanumerische ID des Google Cloud-Projekts, das Sie für die Anfrage verwenden möchten.

HTTP-Methode und URL:

POST https://cloudidentity.googleapis.com/v1/groups/GROUP_ID/memberships

JSON-Text der Anfrage:

{
  "preferredMemberKey": {
    "id": "MEMBER_ID"
  },
  "roles": [
    {
      "name": "MEMBER"
    }
  ]
}

Wenn Sie die Anfrage senden möchten, maximieren Sie eine der folgenden Optionen:

Die Antwort enthält ein Operation, das den Status Ihrer Anfrage angibt.

Abgeschlossene Vorgänge enthalten die hinzugefügte Mitgliedschaft. Beispiel:

{
  "done": true,
  "response": {
    "@type": "type.googleapis.com/google.apps.cloudidentity.groups.v1.Membership",
    "name": "groups/GROUP_ID/memberships/123456789012345678901",
    "preferredMemberKey": {
      "id": "MEMBER_ID"
    },
    "roles": [
      {
        "name": "MEMBER"
      }
    ]
  }
}

Sie können auch die Methode memberships.create verwenden, um ein Mitglied als Manager oder Inhaber der Gruppe hinzuzufügen:

  • Wenn Sie jemanden zum Manager der Gruppe machen möchten, fügen Sie der Gruppe ein Mitglied hinzu. Verwenden Sie dabei den folgenden Anfragetext:

    {
      "preferredMemberKey": {
        "id": "MEMBER_ID"
      },
      "roles": [
        {
          "name": "MEMBER"
        }
        {
          "name": "MANAGER"
        }
      ]
    }
    
  • Wenn Sie einen Inhaber der Gruppe machen möchten, fügen Sie der Gruppe ein Mitglied hinzu. Verwenden Sie dabei den folgenden Anfragetext:

    {
      "preferredMemberKey": {
        "id": "MEMBER_ID"
      },
      "roles": [
        {
          "name": "MEMBER"
        }
        {
          "name": "OWNER"
        }
      ]
    }
    

Python

Der folgende Code zeigt, wie Sie einer Gruppe eine Mitgliedschaft hinzufügen. expiryDetail ist ein optionales Feld, das hinzugefügt werden kann, um eine Ablauffrist für die Mitgliedschaft festzulegen. Der Wert von preferredMemberKey ist die E-Mail-Adresse des Mitglieds.

def create_google_group_membership(service, identity_source_id, group_id, member_key):
  param = "&groupKey.id=" + group_id + "&groupKey.namespace=identitysources/" + identity_source_id
  try:
    lookupGroupNameRequest = service.groups().lookup()
    lookupGroupNameRequest.uri += param
    # Given a group ID and namespace, retrieve the ID for parent group
    lookupGroupNameResponse = lookupGroupNameRequest.execute()
    groupName = lookupGroupNameResponse.get("name")
    # Create a membership object with a memberKey and a single role of type MEMBER
    membership = {
      "preferredMemberKey": {"id": member_key},
      "roles" : {
        "name" : "MEMBER",
        "expiryDetail": {
          "expireTime": "2021-10-02T15:01:23Z"
        }
      }
    }
    # Create a membership using the ID for the parent group and a membership object
    response = service.groups().memberships().create(parent=groupName, body=membership).execute()
    print(response)
  except Exception as e:
    print(e)

Mitgliedschaften einer Google Groups-Gruppe auflisten

REST

Verwenden Sie die Methode memberships.list, um die Mitglieder einer Gruppe aufzulisten.

Bevor Sie die Anfragedaten verwenden, ersetzen Sie die folgenden Werte:

  • GROUP_ID: Die numerische ID der Gruppe, deren Mitglieder Sie auflisten möchten. Verwenden Sie die Methode groups.lookup, um die ID einer einzelnen Gruppe zu ermitteln. Verwenden Sie die Methode groups.list, um alle Gruppen-IDs unter einem Kunden oder Namespace anzusehen.
  • PROJECT_ID: Die alphanumerische ID des Google Cloud-Projekts, das Sie für die Anfrage verwenden möchten.

HTTP-Methode und URL:

GET https://cloudidentity.googleapis.com/v1/groups/GROUP_ID/memberships

Wenn Sie die Anfrage senden möchten, maximieren Sie eine der folgenden Optionen:

Die Antwort enthält ein Array aller Mitglieder in der Gruppe und deren Rollen.

Python

Der folgende Code listet die Mitgliedschaften einer Gruppe auf:

def list_google_group_memberships(service, group_id):
  param = "&groupKey.id=" + group_id
  try:
    lookup_group_name_request = service.groups().lookup()
    lookup_group_name_request.uri += param
    lookup_group_name_response = lookup_group_name_request.execute()
    group_name = lookup_group_name_response.get("name")
    # List memberships
    response = service.groups().memberships().list(parent=group_name).execute()
    print(response)
  except Exception as e:
    print(e)