Fügen Sie ein Mitglied zu einer Sicherheits- oder Microsoft 365-Gruppe hinzu. Wenn Sie die API verwenden, um mehrere Mitglieder in einer Anforderung hinzuzufügen, können Sie nur bis zu 20 Mitglieder hinzufügen.
Die folgende Tabelle zeigt die Typen von Mitgliedern, die entweder Sicherheitsgruppen oder Microsoft 365-Gruppen hinzugefügt werden können.
In der folgenden Tabelle sind die Berechtigungen mit den geringsten Berechtigungen aufgeführt, die für jeden Ressourcentyp erforderlich sind, wenn diese API aufgerufen wird. Weitere Informationen, unter anderem zur Auswahl von Berechtigungen, finden Sie unter Berechtigungen.
In delegierten Szenarien muss dem angemeldeten Benutzer auch eine unterstützte Microsoft Entra-Rolle oder eine benutzerdefinierte Rolle mit der microsoft.directory/groups/members/update Rollenberechtigung zugewiesen werden. Die folgenden Rollen mit den geringsten Berechtigungen werden für diesen Vorgang unterstützt, mit Ausnahme von Gruppen, denen Rollen zugewiesen werden können:
Gruppenbesitzer
Verzeichnisautoren
Gruppenadministrator
Identity Governance-Administrator
Benutzeradministrator
Exchange-Administrator – nur für Microsoft 365-Gruppen
SharePoint-Administrator – nur für Microsoft 365-Gruppen
Teams-Administrator – nur für Microsoft 365-Gruppen
Yammer Administrator – nur für Microsoft 365-Gruppen
Intune-Administrator – nur für Sicherheitsgruppen
Zum Hinzufügen von Mitgliedern zu einer Gruppe, die einer Rolle zugewiesen werden kann, muss der App auch die Berechtigung RoleManagement.ReadWrite.Directory zugewiesen werden, und dem aufrufenden Benutzer muss eine unterstützte Microsoft Entra-Rolle zugewiesen werden.
Administrator für privilegierte Rollen ist die Rolle mit den geringsten Berechtigungen, die für diesen Vorgang unterstützt wird.
HTTP-Anforderung
POST /groups/{group-id}/members/$ref
POST /groups/{group-id}/members/
Wenn Sie die /groups/{group-id}/members/$ref Syntax verwenden, geben Sie ein JSON-Objekt an, das eine @odata.id-Eigenschaft mit einem Verweis nach ID auf einen unterstützten Gruppenmitgliedsobjekttyp enthält.
Wenn Sie die /groups/{group-id}/members Syntax verwenden, geben Sie ein JSON-Objekt an, das eine members@odata.bind Eigenschaft mit mindestens einem Verweis durch IDs auf einen unterstützten Gruppenmitgliedsobjekttyp enthält.
Wenn Sie den directoryObjects-Verweis verwenden, d. h https://graph.microsoft.com/v1.0/directoryObjects/{id}. , muss der Objekttyp weiterhin ein unterstützter Gruppenmitgliedsobjekttyp sein.
Antwort
Wenn die Methode erfolgreich verläuft, wird der Antwortcode 204 No Content zurückgegeben. Es gibt einen 400 Bad Request Antwortcode zurück, wenn das Objekt bereits Mitglied der Gruppe ist oder nicht als Gruppenmitglied unterstützt wird. Er gibt einen 404 Not Found Antwortcode zurück, wenn das hinzugefügte Objekt nicht vorhanden ist.
Beispiele
Beispiel 1: Hinzufügen eines Mitglieds zu einer Gruppe
Anforderung
Das folgende Beispiel zeigt eine Anforderung, die den directoryObjects-Verweis verwendet, um einer Gruppe ein Mitglied hinzuzufügen.
POST https://graph.microsoft.com/v1.0/groups/{group-id}/members/$ref
Content-type: application/json
{
"@odata.id": "https://graph.microsoft.com/v1.0/directoryObjects/{id}"
}
// Code snippets are only available for the latest version. Current version is 5.x
// Dependencies
using Microsoft.Graph.Models;
var requestBody = new ReferenceCreate
{
OdataId = "https://graph.microsoft.com/v1.0/directoryObjects/{id}",
};
// To initialize your graphClient, see https://video2.skills-academy.com/en-us/graph/sdks/create-client?from=snippets&tabs=csharp
await graphClient.Groups["{group-id}"].Members.Ref.PostAsync(requestBody);
// Code snippets are only available for the latest major version. Current major version is $v1.*
// Dependencies
import (
"context"
msgraphsdk "github.com/microsoftgraph/msgraph-sdk-go"
graphmodels "github.com/microsoftgraph/msgraph-sdk-go/models"
//other-imports
)
requestBody := graphmodels.NewReferenceCreate()
odataId := "https://graph.microsoft.com/v1.0/directoryObjects/{id}"
requestBody.SetOdataId(&odataId)
// To initialize your graphClient, see https://video2.skills-academy.com/en-us/graph/sdks/create-client?from=snippets&tabs=go
graphClient.Groups().ByGroupId("group-id").Members().Ref().Post(context.Background(), requestBody, nil)
// Code snippets are only available for the latest version. Current version is 6.x
GraphServiceClient graphClient = new GraphServiceClient(requestAdapter);
com.microsoft.graph.models.ReferenceCreate referenceCreate = new com.microsoft.graph.models.ReferenceCreate();
referenceCreate.setOdataId("https://graph.microsoft.com/v1.0/directoryObjects/{id}");
graphClient.groups().byGroupId("{group-id}").members().ref().post(referenceCreate);
<?php
use Microsoft\Graph\GraphServiceClient;
use Microsoft\Graph\Generated\Models\ReferenceCreate;
$graphServiceClient = new GraphServiceClient($tokenRequestContext, $scopes);
$requestBody = new ReferenceCreate();
$requestBody->setOdataId('https://graph.microsoft.com/v1.0/directoryObjects/{id}');
$graphServiceClient->groups()->byGroupId('group-id')->members()->ref()->post($requestBody)->wait();
# Code snippets are only available for the latest version. Current version is 1.x
from msgraph import GraphServiceClient
from msgraph.generated.models.reference_create import ReferenceCreate
# To initialize your graph_client, see https://video2.skills-academy.com/en-us/graph/sdks/create-client?from=snippets&tabs=python
request_body = ReferenceCreate(
odata_id = "https://graph.microsoft.com/v1.0/directoryObjects/{id}",
)
await graph_client.groups.by_group_id('group-id').members.ref.post(request_body)
Geben Sie im Anforderungstext eine JSON-Darstellung der ID des directoryObject-, user- oder group-Objekts an, das hinzugefügt werden soll.
Antwort
Das folgende Beispiel zeigt die Antwort.
HTTP/1.1 204 No Content
Beispiel 2: Hinzufügen von mehreren Mitgliedern zu einer Gruppe im Rahmen einer einzigen Anforderung
In diesem Beispiel wird gezeigt, wie Sie einer Gruppe mit OData-Bindungsunterstützung mehrere Mitglieder hinzufügen. In einer einzelnen Anforderung können bis zu 20 Mitglieder hinzugefügt werden. Der POST-Vorgang wird nicht unterstützt. Wenn eine Fehlerbedingung im Hauptteil der Anforderung vorliegt, werden keine Mitglieder hinzugefügt, und der entsprechende Antwortcode wird zurückgegeben.
// Code snippets are only available for the latest version. Current version is 5.x
// Dependencies
using Microsoft.Graph.Models;
var requestBody = new Group
{
AdditionalData = new Dictionary<string, object>
{
{
"members@odata.bind" , new List<string>
{
"https://graph.microsoft.com/v1.0/directoryObjects/{id}",
"https://graph.microsoft.com/v1.0/directoryObjects/{id}",
"https://graph.microsoft.com/v1.0/directoryObjects/{id}",
}
},
},
};
// To initialize your graphClient, see https://video2.skills-academy.com/en-us/graph/sdks/create-client?from=snippets&tabs=csharp
var result = await graphClient.Groups["{group-id}"].PatchAsync(requestBody);
// Code snippets are only available for the latest major version. Current major version is $v1.*
// Dependencies
import (
"context"
msgraphsdk "github.com/microsoftgraph/msgraph-sdk-go"
graphmodels "github.com/microsoftgraph/msgraph-sdk-go/models"
//other-imports
)
requestBody := graphmodels.NewGroup()
additionalData := map[string]interface{}{
odataBind := []string {
"https://graph.microsoft.com/v1.0/directoryObjects/{id}",
"https://graph.microsoft.com/v1.0/directoryObjects/{id}",
"https://graph.microsoft.com/v1.0/directoryObjects/{id}",
}
}
requestBody.SetAdditionalData(additionalData)
// To initialize your graphClient, see https://video2.skills-academy.com/en-us/graph/sdks/create-client?from=snippets&tabs=go
groups, err := graphClient.Groups().ByGroupId("group-id").Patch(context.Background(), requestBody, nil)
// Code snippets are only available for the latest version. Current version is 6.x
GraphServiceClient graphClient = new GraphServiceClient(requestAdapter);
Group group = new Group();
HashMap<String, Object> additionalData = new HashMap<String, Object>();
LinkedList<String> membersOdataBind = new LinkedList<String>();
membersOdataBind.add("https://graph.microsoft.com/v1.0/directoryObjects/{id}");
membersOdataBind.add("https://graph.microsoft.com/v1.0/directoryObjects/{id}");
membersOdataBind.add("https://graph.microsoft.com/v1.0/directoryObjects/{id}");
additionalData.put("members@odata.bind", membersOdataBind);
group.setAdditionalData(additionalData);
Group result = graphClient.groups().byGroupId("{group-id}").patch(group);
# Code snippets are only available for the latest version. Current version is 1.x
from msgraph import GraphServiceClient
from msgraph.generated.models.group import Group
# To initialize your graph_client, see https://video2.skills-academy.com/en-us/graph/sdks/create-client?from=snippets&tabs=python
request_body = Group(
additional_data = {
"members@odata_bind" : [
"https://graph.microsoft.com/v1.0/directoryObjects/{id}",
"https://graph.microsoft.com/v1.0/directoryObjects/{id}",
"https://graph.microsoft.com/v1.0/directoryObjects/{id}",
],
}
)
result = await graph_client.groups.by_group_id('group-id').patch(request_body)