Auflisten der direkten Mitgliedschaften eines Benutzers
Namespace: microsoft.graph
Wichtig
Die APIs unter der /beta
Version in Microsoft Graph können sich ändern. Die Verwendung dieser APIs in Produktionsanwendungen wird nicht unterstützt. Um festzustellen, ob eine API in v1.0 verfügbar ist, verwenden Sie die Version Selektor.
Rufen Sie Gruppen, Verzeichnisrollen und administrative Einheiten ab, bei denen der Benutzer ein direktes Mitglied ist. Dieser Vorgang ist nicht transitiv. Verwenden Sie zum Abrufen von Gruppen, Verzeichnisrollen und Verwaltungseinheiten, bei denen der Benutzer ein Mitglied über transitive Mitgliedschaft ist, die API List user transitive memberOf.
Diese API ist in den folgenden nationalen Cloudbereitstellungen verfügbar.
Weltweiter Service | US Government L4 | US Government L5 (DOD) | China, betrieben von 21Vianet |
---|---|---|---|
✅ | ✅ | ✅ | ✅ |
Berechtigungen
Wählen Sie die Berechtigung oder Berechtigungen aus, die für diese API als am wenigsten privilegiert markiert sind. Verwenden Sie eine höhere Berechtigung oder Berechtigungen nur, wenn Ihre App dies erfordert. Ausführliche Informationen zu delegierten Berechtigungen und Anwendungsberechtigungen finden Sie unter Berechtigungstypen. Weitere Informationen zu diesen Berechtigungen finden Sie in der Berechtigungsreferenz.
Berechtigungen für die direkten Mitgliedschaften des angemeldeten Benutzers
Berechtigungstyp | Berechtigungen mit den geringsten Berechtigungen | Berechtigungen mit höheren Berechtigungen |
---|---|---|
Delegiert (Geschäfts-, Schul- oder Unikonto) | User.Read | Directory.Read.All, Directory.ReadWrite.All, GroupMember.Read.All |
Delegiert (persönliches Microsoft-Konto) | Nicht unterstützt | Nicht unterstützt |
Anwendung | Nicht unterstützt | Nicht unterstützt |
Berechtigungen für die direkten Mitgliedschaften eines anderen Benutzers
Berechtigungstyp | Berechtigungen mit den geringsten Berechtigungen | Berechtigungen mit höheren Berechtigungen |
---|---|---|
Delegiert (Geschäfts-, Schul- oder Unikonto) | User.Read.All | Directory.Read.All, Directory.ReadWrite.All, GroupMember.Read.All |
Delegiert (persönliches Microsoft-Konto) | Nicht unterstützt | Nicht unterstützt |
Anwendung | Directory.Read.All | Directory.ReadWrite.All |
Wichtig
Wenn eine Anwendung eine Beziehung abfragt, die eine directoryObject-Typauflistung zurückgibt, wenn sie nicht über die Berechtigung zum Lesen eines bestimmten Ressourcentyps verfügt, werden Member dieses Typs zurückgegeben, aber mit eingeschränkten Informationen. Beispielsweise wird nur die @odata.type-Eigenschaft für den Objekttyp und die ID zurückgegeben, während andere Eigenschaften als null
angegeben werden. Mit diesem Verhalten können Anwendungen die am wenigsten privilegierten Berechtigungen anfordern, die sie benötigen, anstatt sich auf den Satz von Verzeichnis zu verlassen.*Erlaubnisse. Einzelheiten finden Sie unter Eingeschränkte Informationen, die für nicht zugängliche Mitgliedsobjekte zurückgegeben werden.
Tipp
- Das Aufrufen des
/me/memberOf
-Endpunkts erfordert einen angemeldeten Benutzer und daher eine delegierte Berechtigung. Anwendungsberechtigungen werden nicht unterstützt, wenn Sie den/me/memberOf
Endpunkt verwenden. - Um die Mitglieder einer Gruppe mit ausgeblendeter Mitgliedschaft aufzulisten, ist die
Member.Read.Hidden
Berechtigung erforderlich.
HTTP-Anforderung
GET /me/memberOf
GET /users/{id | userPrincipalName}/memberOf
Optionale Abfrageparameter
Diese Methode unterstützt die OData-Abfrageparameter zur Anpassung der Antwort, einschließlich $search
, $count
und $filter
. OData-Umwandlung ist ebenfalls aktiviert. Sie können beispielsweise so umwandeln, dass nur die Verzeichnisrollen abgerufen werden, in der der Benutzer Mitglied ist. Sie können $search
auf die Eigenschaft displayName verwenden. Elemente, die für diese Ressource hinzugefügt oder aktualisiert werden, werden speziell für die Verwendung mit den $count
Abfrageparametern und $search
indiziert. Zwischen dem Hinzufügen oder Aktualisieren eines Elements und dem Zeitpunkt, an dem es im Index verfügbar ist, kann es zu einer geringfügigen Verzögerung kommen.
Anforderungsheader
Kopfzeile | Wert |
---|---|
Authorization | Bearer {token}. Erforderlich. Weitere Informationen zu Authentifizierung und Autorisierung. |
ConsistencyLevel | schließlich. Diese Kopfzeile und $count sind bei Verwendung der Abfrageparameter $search , $filter , $orderby oder OData-Cast erforderlich. Es wird ein Index verwendet, der möglicherweise nicht auf dem neuesten Stand der jüngsten Änderungen am Objekt ist. |
Anforderungstext
Geben Sie keinen Anforderungstext für diese Methode an.
Antwort
Wenn die Methode erfolgreich verläuft, werden der Antwortcode 200 OK
und eine Sammlung von directoryObject-Objekten im Antworttext zurückgegeben.
Beispiele
Beispiel 1: Gruppen, Verzeichnisrollen und administrative Einheiten abrufen, bei denen der Benutzer ein direktes Mitglied ist
Anforderung
Das folgende Beispiel zeigt eine Anfrage.
GET https://graph.microsoft.com/beta/users/{id}/memberOf
Antwort
Das folgende Beispiel zeigt die Antwort.
Hinweis: Das hier gezeigte Antwortobjekt kann zur besseren Lesbarkeit gekürzt werden.
HTTP/1.1 200 OK
Content-type: application/json
{
"value": [
{
"@odata.type": "#microsoft.graph.group",
"displayName": "All Users",
"mailEnabled": false,
"securityEnabled": true
}
]
}
Beispiel 2: Nur die Anzahl aller Gruppen, Verzeichnisrollen und administrativen Einheiten abrufen, bei denen der Benutzer ein direktes Mitglied ist
Anforderung
Das folgende Beispiel zeigt eine Anfrage.
GET https://graph.microsoft.com/beta/users/{id}/memberOf/$count
ConsistencyLevel: eventual
Antwort
Das folgende Beispiel zeigt die Antwort.
Hinweis: Das hier gezeigte Antwortobjekt kann zur besseren Lesbarkeit gekürzt werden.
HTTP/1.1 200 OK
Content-type: text/plain
17
Beispiel 3: OData-Besetzung verwenden, um nur die Anzahl der Gruppenmitglieder zu erhalten
Anforderung
Das folgende Beispiel zeigt eine Anfrage.
GET https://graph.microsoft.com/beta/users/{id}/memberOf/microsoft.graph.group/$count
ConsistencyLevel: eventual
Antwort
Das folgende Beispiel zeigt die Antwort.
HTTP/1.1 200 OK
Content-type: text/plain
16
Beispiel 4: $search und OData-Cast verwenden, um Mitgliedschaften in Gruppen abzurufen, deren Anzeigenamen die Zeichenfolge "tier" enthalten, einschließlich einer Zählung der zurückgegebenen Objekte
Anforderung
Das folgende Beispiel zeigt eine Anfrage.
GET https://graph.microsoft.com/beta/users/{id}/memberOf/microsoft.graph.group?$count=true&$orderby=displayName&$search="displayName:tier"&$select=displayName,id
ConsistencyLevel: eventual
Antwort
Das folgende Beispiel zeigt die Antwort.
Hinweis: Das hier gezeigte Antwortobjekt kann zur besseren Lesbarkeit gekürzt werden.
HTTP/1.1 200 OK
Content-type: application/json
{
"@odata.context":"https://graph.microsoft.com/beta/$metadata#groups(displayName,id)",
"@odata.count":7,
"value":[
{
"displayName":"Contoso-tier Query Notification",
"id":"11111111-2222-3333-4444-555555555555"
}
]
}
Beispiel 5: $filter und OData-Cast verwenden, um Gruppen abzurufen, deren Anzeigename mit "A" beginnt, einschließlich einer Zählung der zurückgegebenen Objekte
Anforderung
Das folgende Beispiel zeigt eine Anfrage.
GET https://graph.microsoft.com/beta/users/{id}/transitiveMemberOf/microsoft.graph.group?$count=true&$orderby=displayName&$filter=startswith(displayName, 'a')
ConsistencyLevel: eventual
Antwort
Das folgende Beispiel zeigt die Antwort.
Hinweis: Das hier gezeigte Antwortobjekt kann zur besseren Lesbarkeit gekürzt werden.
HTTP/1.1 200 OK
Content-type: application/json
{
"@odata.context":"https://graph.microsoft.com/beta/$metadata#groups",
"@odata.count":76,
"value":[
{
"displayName":"AAD Contoso Users",
"mail":"AADContoso_Users@contoso.com",
"mailEnabled":true,
"mailNickname":"AADContoso_Users",
"securityEnabled":true
}
]
}
Beispiel 6: Verwenden der $filter- und OData-Umwandlung zum Abrufen von Gruppen mit mindestens einer App-Rollenzuweisung
Anforderung
Das folgende Beispiel zeigt eine Anfrage.
GET https://graph.microsoft.com/beta/users/{id}/memberOf/microsoft.graph.group?$filter=appRoleAssignments/$count gt 0&$select=id,displayName
Antwort
Das folgende Beispiel zeigt die Antwort.
Hinweis: Das hier gezeigte Antwortobjekt kann zur besseren Lesbarkeit gekürzt werden.
HTTP/1.1 200 OK
Content-type: application/json
{
"@odata.context":"https://graph.microsoft.com/beta/$metadata#groups",
"value":[
{
"id": "c11b732b-0e16-46c1-b0fa-bd32c8a42455",
"displayName":"All users"
},
{
"id": "3f927b40-06f8-4352-b8e4-37a7ba04b7ff",
"displayName":"AAD Contoso Users"
}
]
}