Freigeben über


Erste Schritte mit der Microsoft Graph-Befehlszeilenschnittstelle (CLI)

In diesem Thema verwenden Sie die Microsoft Graph-Befehlszeilenschnittstelle (CLI), um einige grundlegende Aufgaben auszuführen. Wenn Sie die CLI noch nicht installiert haben, führen Sie dies aus, bevor Sie diese Anleitung befolgen.

API-Version

Die Microsoft Graph-CLI verwendet die Microsoft Graph-REST-API v1.0.

Authentifizierung

Die Microsoft Graph CLI unterstützt zwei Arten der Authentifizierung: delegierten Zugriff und nur App-Zugriff. In diesem Thema verwenden Sie delegierten Zugriff, um sich als Benutzer anzumelden, erteilen der CLI die Zustimmung, in Ihrem Namen zu handeln, und rufen Microsoft Graph auf.

Ausführliche Informationen zur Verwendung des reinen App-Zugriffs für unbeaufsichtigte Szenarien finden Sie unter Verwenden der reinen App-Authentifizierung mit der Microsoft Graph-Befehlszeilenschnittstelle (CLI).

Bestimmen erforderlicher Berechtigungsbereiche

Jede API in Microsoft Graph wird durch einen oder mehrere Berechtigungsbereiche geschützt. Der Benutzer, der sich anmeldet, muss einem der erforderlichen Bereiche für die APIs zustimmen, die Sie verwenden möchten. In diesem Beispiel werden die folgenden APIs verwendet:

Die User.ReadBerechtigungsbereiche , Team.ReadBasic.All, Channel.ReadBasic.Allund ChannelMessage.Send ermöglichen diese Aufrufe.

Anmelden

Verwenden Sie den mgc login Befehl, um sich mit den erforderlichen Bereichen anzumelden.

mgc login --scopes User.Read Team.ReadBasic.All Channel.ReadBasic.All ChannelMessage.Send

Der Befehl fordert Sie auf, zu einer Webseite zu wechseln, um sich mit einem Gerätecode anzumelden. Wenn Sie dies getan haben, wird der Befehl abgeschlossen. Sie müssen sich nur einmal pro Sitzung anmelden.

Tipp

Sie können zusätzliche Berechtigungen hinzufügen, indem Sie den mgc login Befehl mit den neuen Berechtigungsbereichen wiederholen.

Aufrufen von Microsoft Graph

Nachdem Sie nun angemeldet sind, können Sie mit Aufrufen von Microsoft Graph beginnen.

Hinweis

Einige Anforderungen für Microsoft Entra Ressourcen erfordern die Verwendung erweiterter Abfragefunktionen. Wenn Sie eine Antwort erhalten, die auf eine ungültige Anforderung, eine nicht unterstützte Abfrage oder eine Antwort mit unerwarteten Ergebnissen hinweist, kann es möglich sein, dass die Anforderung erfolgreich ist, einschließlich des $count Abfrageparameters und ConsistencyLevel des Headers. Ausführliche Informationen und Beispiele finden Sie unter Erweiterte Abfragefunktionen für Verzeichnisobjekte.

Abrufen des angemeldeten Benutzers

In diesem Abschnitt suchen Sie den angemeldeten Benutzer und rufen dessen Benutzer-ID ab. Sie benötigen diese als Parameter für die anderen Befehle, die Sie später verwenden werden. Führen Sie zunächst den folgenden Befehl aus. Ersetzen Sie durch <your-display-name> den Anzeigenamen des angemeldeten Benutzers.

mgc users list --filter "displayName eq '<your-display-name>'"

Dieser Befehl gibt eine JSON-Darstellung des angemeldeten Benutzers aus.

{
  "@odata.context": "https://graph.microsoft.com/v1.0/$metadata#users",
  "value": [
    {
      "businessPhones": [
        "\u002B1 412 555 0109"
      ],
      "displayName": "Megan Bowen",
      "givenName": "Megan",
      "jobTitle": "Marketing Manager",
      "mail": "MeganB@contoso.com",
      "mobilePhone": null,
      "officeLocation": "12/1110",
      "preferredLanguage": "en-US",
      "surname": "Bowen",
      "userPrincipalName": "MeganB@contoso.com",
      "id": "4db673f0-3c2a-4d45-a9d9-3a4a8c63af6e"
    }
  ]
}

Sie können OData-Abfrageparameter verwenden, um die Antwort anzupassen. Wenn Sie beispielsweise nur den Anzeigenamen des Benutzers anfordern möchten, können Sie die --select Option verwenden.

mgc users get --user-id <user-id> --select displayName

Auflisten der verbundenen Teams des Benutzers

Verwenden Sie nun den mgc me joined-teams list Befehl, um die in den Benutzer eingebundenen Teams aufzulisten.

mgc users joined-teams list --user-id <user-id> --select displayName,id
{
  "@odata.context": "https://graph.microsoft.com/v1.0/$metadata#teams(displayName,id)",
  "@odata.count": 5,
  "value": [
    {
      "id": "ab41a24e-ed63-4725-abb7-d22f90a4fdc3",
      "displayName": "Sales and Marketing"
    },
    {
      "id": "6520aa84-f197-489c-b79e-a2614a5a2ad0",
      "displayName": "Mark 8 Project Team"
    },
    {
      "id": "e7bc29ba-7794-4df9-8f35-fce723b15fe4",
      "displayName": "Retail"
    },
    {
      "id": "22cf3814-dbef-4eb0-abe3-759b320b7d76",
      "displayName": "Digital Initiative Public Relations"
    },
    {
      "id": "76708e21-b4ad-431e-9394-4ee7536d17bf",
      "displayName": "U.S. Sales"
    }
  ]
}

Wählen Sie eines der teams des Benutzers aus, und kopieren Sie dessen id.

Auflisten von Teamkanälen

Verwenden Sie nun die Team-ID als Parameter für den mgc teams channels list Befehl.

mgc teams channels list --team-id ab41a24e-ed63-4725-abb7-d22f90a4fdc3 --select displayName,id
{
  "@odata.context":
"https://graph.microsoft.com/v1.0/$metadata#teams(\u0027ab41a24e-ed63-4725-abb7-d22f90a4fdc3\u0027)/channels(displayName
,id)",
  "@odata.count": 2,
  "value": [
    {
      "id": "19:9194c1a65d9c478fa0dc1d5cd5bdf18a@thread.tacv2",
      "displayName": "Monthly Reports"
    },
    {
      "id": "19:YlJvOa8M094qgkEgjJR7l6AogKx9jDsLpuXsl7O8Ft81@thread.tacv2",
      "displayName": "General"
    }
  ]
}

Wählen Sie einen der Kanäle aus, und kopieren Sie dessen id.

Senden einer Nachricht

Nachdem Sie nun sowohl über die Team-ID als auch über die Kanal-ID verfügen, können Sie eine Nachricht an den Kanal senden. Verwenden Sie den folgenden Befehl, um die Nachricht zu senden.

mgc teams channels messages create --team-id ab41a24e-ed63-4725-abb7-d22f90a4fdc3 --channel-id 19:YlJvOa8M094qgkEgjJR7l6AogKx9jDsLpuXsl7O8Ft81@thread.tacv2 --body '{"body": {"content": "Hello world!"}, "importance": "urgent"}'

Dieser Befehl unterscheidet sich von den vorherigen Befehlen, die Sie verwendet haben. Anstatt Daten zu abfragen, wird tatsächlich etwas erstellt. In Microsoft Graph wird dieser Befehl in ein HTTP-Element POSTübersetzt, und er erfordert ein -Objekt im Text dieses Beitrags. In diesem Fall ist das Objekt eine chatMessage. Der --body -Parameter akzeptiert eine JSON-Darstellung eines chatMessage.

Abmelden

Verwenden Sie den mgc logout Befehl, um sich abzumelden.

mgc logout

Nächste Schritte