Beginnen Sie mit der Verwaltung mit diesen Microsoft Graph-API-Funktionen

Die Verwaltung mehrerer Cloud-Dienste von Microsoft bereitet aufgrund der vielen Verwaltungsoptionen Kopfschmerzen, aber eine relativ neue Technologie bietet einen einheitlichen Ansatz zur Erleichterung der Verwaltung.

Microsoft 365 als Kerndienst ist eine verbundene Reihe von Komponenten, Steuerelementen und Diensten. Jeder Dienst – einschließlich Exchange, SharePoint, Microsoft Teams und sogar die Sicherheits- und Compliance-Funktionen – verfügt über eine eigene API. Separate APIs erschweren das Abrufen von Informationen oder das Durchführen von Änderungen. Sie müssen einen anderen Endpunkt mit unterschiedlichen Eigenschaften und sogar unterschiedlicher Syntax verwenden. Microsoft hat Microsoft Graph entwickelt, um die Arbeit mit Diensten innerhalb von Microsoft 365/Office 365-Mandanten zu optimieren. Mit PowerShell können Sie eine Verbindung zu einem Endpunkt herstellen, um mit all Ihren Microsoft-Diensten zu arbeiten.

Microsoft Graph macht die bestehenden REST-APIs und Clientbibliotheken, um Verbindungen zu Microsoft-Clouddiensten wie den folgenden zu ermöglichen:

  • Microsoft 365-Clouddienste
  • Microsoft 365-Compliance-eDiscovery
  • Microsoft-Suche
  • Enterprise Mobility + Sicherheitsdienste
  • Windows 10-Dienste
  • Dynamics 365 Business Central

Jeder Dienst hat seine eigene API, aber Microsoft Graph umschließt sie in einem zusammenhängenderen Framework.

Microsoft Graph hat zwei Kernendpunkte: eine freigegebene Version, bekannt als Version 1.0, und eine Betaversion zu Testzwecken. Um beispielsweise Ihr persönliches Microsoft 365-Benutzerprofil anzuzeigen, können Sie einen der Endpunkte verwenden, indem Sie die folgenden Links zum Online-Tool Graph Explorer verwenden:

Wie verwenden Sie Microsoft Graph?

Graph Explorer ist ein großartiger Ausgangspunkt, um eine Verbindung zu Ihrem Mandanten herzustellen und Befehle auszuführen. Das Microsoft Graph-Toolkit funktioniert mit anderen Programmiersprachen mit einem gemeinsamen Framework. Um mehr über das Microsoft Graph-Toolkit zu erfahren, bietet der folgende Link genauere Informationen.
Eine weitere Option ist das Graph PowerShell SDK, ein Wrapper für Microsoft Graph. Jeder PowerShell-Befehl stellt eine direkte Verbindung zu einem oder mehreren Microsoft Graph-API-Aufrufen her.
Unabhängig vom Ansatz erfordert die Verwendung von Microsoft Graph eine Verbindung mit einem REST-API-Endpunkt in Kombination mit den erforderlichen Eigenschaften oder Werten. Um beispielsweise die Mitglieder eines Microsoft Teams-Kanals mithilfe von Microsoft Graph abzurufen, muss der folgende Uniform Resource Identifier (HASSEN) erforderlich:
https://graph.microsoft.com/v1.0/groups/0c83236a-7484-4128-b43c-f7f5011a581b/members
Der URI beginnt mit dem Diagrammendpunkt und der Diagrammversion, gefolgt vom Dienstendpunkt, der Ressourcen-ID (Team-ID) und dem erforderlichen Objekttyp, in diesem Fall Mitglieder des Teams. Sie können denselben URI in jeder unterstützten Programmiersprache oder jedem Tool verwenden, das REST-API-Aufrufe unterstützt. Um beispielsweise denselben URI mit PowerShell aufzurufen, verwenden Sie die folgenden Befehle:

$endpoint= https://graph.microsoft.com
$version = "beta"
$serviceendpoint = "groups"
$resource = "0c83236a-7484-4128-b43c-f7f5011a581b"
$objecttype = "members"
$body = @{}
$members = Invoke-MgGraphRequest `
     -Uri "$endpoint/$version/$serviceendpoint/$resource/$objecttype" `
     -Method GET `
     -Body $body
$members.value | ForEach-Object {
     Write-Host $_.mail
}

Warum Microsoft Graph verwenden?

Es gibt sechs zwingende Gründe, Microsoft Graph zu verwenden:

  1. stellt einen einzelnen Ressourcenendpunkt bereit;
  2. unterstützt mehrere Entwicklungstypen;
  3. erleichtert die Navigation von Microsoft Graph-Objekten;
  4. bietet Entwicklungsplattform- und Sprachflexibilität;
  5. erhält Schutz durch den Microsoft-Identitätsstapel und -Dienste; und
  6. verwendet offene Standards.

Microsoft Graph hilft Ihnen, mehrere Probleme bei anderen Verwaltungsmethoden zu vermeiden. Einige Konfigurationsoptionen sind in den Verwaltungsportalen nicht vorhanden und nur in Microsoft Graph verfügbar. Neue Features werden normalerweise in Microsoft Graph angezeigt, bevor sie in den Portalen erscheinen.
Es ist oft einfacher, die erforderlichen Informationen mit Microsoft Graph abzurufen als mit den Verwaltungsportalen. Um beispielsweise alle Benutzer im Mandanten und die ihnen zugewiesenen Lizenzen anzuzeigen, müssen Sie bestimmte Seiten im Admin Center oder Azure Active Directory aufrufen oder auf jeden Benutzer klicken, um diese Zuweisungen anzuzeigen. Microsoft Graph benötigt jedoch nur einen einfachen URI, um die Liste abzurufen:
https://graph.microsoft.com/v1.0/users?$select=id,userPrincipalName,assignedLicenses
Die resultierende Ausgabe ist JavaScript Object Notation (JSON), ein Industriestandard für Daten. Sie können die Ergebnisse dann nach Bedarf abfragen oder manipulieren. Die Möglichkeit, eine Liste zu exportieren, ist nicht überall in den Portalen verfügbar, was Microsoft Graph den Vorteil verschafft.

Was ist das Microsoft Graph-SDK?

Microsoft stellt ein SDK für mehrere Programmiersprachen bereit, um das Schreiben von Code für die Arbeit mit Microsoft Graph zu unterstützen.
Die Microsoft Graph SDKs vereinfachen den Zugriff auf Microsoft Graph. Die Microsoft Graph SDKs stellen zwei Komponenten bereit: eine Dienstbibliothek und eine Kernbibliothek. Die Servicebibliothek enthält Modelle und fordert Builder auf, eine umfassende, stark typisiert und auffindbare Erfahrung. Mehrere erweiterte, eingebettete Microsoft Graph-API-Funktionen in der zentralen Kernbibliothek umfassen Wiederholungsbehandlung, sichere Weiterleitungen, transparente Authentifizierung, Payload-Komprimierung, Paging durch Sammlungen und Erstellen von Batch-Anforderungen. Diese Funktionen können Skripts flexibler machen und potenzielle Probleme bei der Arbeit mit Microsoft Graph vermeiden.
Wenn beispielsweise während eines Microsoft Graph-Aufrufs eine Drosselung auftritt, a erneut versuchen -Eigenschaft gibt die Wartezeit vor dem nächsten Anforderungsversuch an.

Behandlung von Wiederholungsversuchen in Microsoft Graph
Das Feature zur Wiederholungsbehandlung bietet eine Möglichkeit, die Drosselung in Microsoft Graph zu handhaben.

Der von Ihnen verwendete Code muss diesem Ansatz entsprechen. Wenn Sie beispielsweise Microsoft Graph nach einem Zeitplan aufrufen, müssen Sie für eine erfolgreiche Ausführung hinzufügen, wie das Skript die Drosselung handhabt.
Neben PowerShell unterstützen die Microsoft Graph SDKs derzeit Android, Angular, ASP.NET, iOS, JavaScript, Node.js, Java, PHP, Python und Ruby.
Um mehr über das Microsoft Graph-Toolkit zu erfahren, können Sie die Architekturdokumentation unter der folgender Link.

Möglichkeiten zur Verwendung von Microsoft Graph

Wie bei jedem Dienst oder jeder Plattform ist es wichtig zu definieren, wie sie verwendet werden soll. Microsoft Graph ist nicht anders.
Es gibt bestimmte Aufgaben, die sich ideal für Microsoft Graph eignen, da es so komplex ist, die Daten abzurufen oder dieselbe Aktion von den Administratorportalen auszuführen. Einige dieser Aufgaben umfassen das Finden von täglichen Besprechungsplänen aus Exchange, das Überprüfen unvollendeter Aufgaben in Microsoft 365/Office 365 und das Anzeigen, zu welchen Microsoft Teams-Kanälen ein Benutzer gehört.
Im Microsoft Teams-Beispiel müssen Sie durch jedes Team navigieren und jeden Kanal überprüfen, um Ihren Zugriff zu überprüfen, wenn Sie diese Aufgabe über die Benutzeroberfläche ausführen. Die Aufgabe ist einfacher, wenn Sie PowerShell verwenden, um die Microsoft Graph-Endpunkte abzufragen:

$me = "[email protected]"
$mychannels = New-Object System.Collections.ArrayList
$body = @{}
 
$teams = Invoke-MgGraphRequest `
    -Uri "https://graph.microsoft.com/v1.0/me/joinedTeams" `
    -Method GET `
    -Body $body
 
$teams.value | ForEach-Object {
    $team = $_
    $channel = Invoke-MgGraphRequest `
        -Uri "https://graph.microsoft.com/v1.0/teams/$($team.ID)/channels" ` `
        -Method GET `
        -Body $body
 
    $channel.value | ForEach-Object {
        $ch = $_
        if($ch.id) {
            $members = Invoke-MgGraphRequest `
                -Uri
"https://graph.microsoft.com/v1.0/teams/$($team.ID)/channels/$($ch.id)/members" `
                -Method GET `
                -Body $body
            
            
            $members.value.email | ForEach-Object {
                if($_ -eq $me)
                {
                    $my =
[pscustomobject]@{'TeamID'=$team.ID;'ChannelID'=$ch.id;'Email'=$_;}
                    $mychannels.Add($my)
                }
            }
        }
    }
}
Die Ergebnisse der Verwendung von Microsoft Graph, um herauszufinden, zu welchen Microsoft Teams-Kanälen ein Benutzer gehört

Das Prinzip ist das gleiche in Bezug auf die auszuführenden Aktionen; es ist viel schneller und einfacher, Microsoft Graph-Aufrufe zu verwenden. Ich empfehle Ihnen, sich Zeit zu nehmen, um mehr über Microsoft Graph zu erfahren, das Graph Explorer-Tool zu verwenden und mit der Programmiersprache Ihrer Wahl zu üben.
Es ist von Vorteil, die Versionshinweise in der aktuellen Version von Microsoft Graph zu lesen von diesem Link um die neuen oder aktualisierten Funktionen zu sehen.

Similar Posts

Leave a Reply