Azure Active Directory Graph-APIAzure Active Directory Graph API

Wichtig

Im Februar 2019 haben wir begonnen, einige frühere Versionen der Azure Active Directory Graph-API zugunsten der Microsoft Graph-API als veraltet zu markieren.As of February 2019, we started the process to deprecate some earlier versions of Azure Active Directory Graph API in favor of the Microsoft Graph API.

Detaillierte Informationen, Updates und den Zeitrahmen finden Sie im Office Dev Center unter Microsoft Graph or the Azure AD Graph (Microsoft Graph oder Azure AD Graph).For details, updates, and time frames, see Microsoft Graph or the Azure AD Graph in the Office Dev Center.

In Zukunft sollten Anwendungen die Microsoft Graph-API verwenden.Moving forward, applications should use the Microsoft Graph API.

Dieser Artikel gilt für die Azure AD Graph-API.This article applies to Azure AD Graph API. Ähnliche Informationen bezogen auf die Microsoft Graph-API finden Sie unter Verwenden der Microsoft Graph-API.For similar info related to Microsoft Graph API, see Use the Microsoft Graph API.

Die Azure Active Directory Graph-API ermöglicht programmgesteuerten Zugriff auf Azure AD über REST-API-Endpunkte.The Azure Active Directory Graph API provides programmatic access to Azure AD through REST API endpoints. Anwendungen können die Azure AD Graph-API verwenden, um CRUD-Vorgänge (Erstellen, Lesen, Aktualisieren und Löschen) für Verzeichnisdaten und Objekte auszuführen.Applications can use Azure AD Graph API to perform create, read, update, and delete (CRUD) operations on directory data and objects. Die Azure AD Graph-API unterstützt beispielsweise die folgenden allgemeinen Vorgänge für ein Benutzerobjekt:For example, Azure AD Graph API supports the following common operations for a user object:

  • Erstellen eines neuen Benutzers in einem VerzeichnisCreate a new user in a directory
  • Abrufen der detaillierten Eigenschaften eines Benutzers, z. B. seiner GruppenGet a user’s detailed properties, such as their groups
  • Aktualisieren der Eigenschaften eines Benutzers, z. B. seines Standorts und seiner Telefonnummer oder das Ändern seines KennwortsUpdate a user’s properties, such as their location and phone number, or change their password
  • Überprüfen der Gruppenmitgliedschaft eines Benutzers für den rollenbasierten ZugriffCheck a user’s group membership for role-based access
  • Deaktivieren oder vollständiges Löschen des Kontos eines BenutzersDisable a user’s account or delete it entirely

Darüber hinaus können Sie ähnliche Vorgänge auch für andere Objekte wie Gruppen oder Anwendungen ausführen.Additionally, you can perform similar operations on other objects such as groups and applications. Um die Azure AD Graph-API in einem Verzeichnis aufzurufen, muss Ihre Anwendung in Azure AD registriert werden.To call Azure AD Graph API on a directory, your application must be registered with Azure AD. Der Anwendung muss zudem Zugriff auf die Azure AD Graph-API gewährt werden.Your application must also be granted access to Azure AD Graph API. Dieser Zugriff wird in der Regel mit einem Zustimmungsvorgang durch den Benutzer oder Administrator erreicht.This access is normally achieved through a user or admin consent flow.

Informationen zu den ersten Schritten mit der Azure Active Directory Graph-API finden Sie in der Schnellstartanleitung für die Azure AD Graph-API und in der interaktiven Azure AD Graph-API-Referenz.To begin using the Azure Active Directory Graph API, see the Azure AD Graph API quickstart guide, or view the interactive Azure AD Graph API reference documentation.

FeaturesFeatures

Die Azure AD Graph-API bietet die folgenden Features:Azure AD Graph API provides the following features:

  • REST-API-Endpunkte: Die Azure AD Graph-API ist ein RESTful-Dienst, der aus Endpunkten besteht, auf die mithilfe von HTTP-Standardanforderungen zugegriffen wird.REST API Endpoints: Azure AD Graph API is a RESTful service comprised of endpoints that are accessed using standard HTTP requests. Die Azure AD Graph-API unterstützt die Inhaltstypen XML oder JavaScript Object Notation (JSON) für Anforderungen und Antworten.Azure AD Graph API supports XML or Javascript Object Notation (JSON) content types for requests and responses. Weitere Informationen finden Sie unter REST-API-Referenz zu Azure AD Graph.For more information, see Azure AD Graph REST API reference.

  • Authentifizierung mit Azure AD: Jede Anforderung an die Azure AD Graph-API muss durch Anfügen eines JSON-Webtokens (JWT) im Autorisierungsheader der Anforderung authentifiziert werden.Authentication with Azure AD: Every request to Azure AD Graph API must be authenticated by appending a JSON Web Token (JWT) in the Authorization header of the request. Dieses Token wird durch eine Anforderung an den Token-Endpunkt von Azure AD und die Bereitstellung gültiger Anmeldeinformationen abgerufen.This token is acquired by making a request to Azure AD’s token endpoint and providing valid credentials. Sie können den OAuth 2.0-Datenfluss für Clientanmeldeinformationen oder den Datenfluss für die Autorisierungscodegewährung verwenden, um ein Token für den Graph-Aufruf abzurufen.You can use the OAuth 2.0 client credentials flow or the authorization code grant flow to acquire a token to call the Graph. Weitere Informationen finden Sie unter OAuth 2.0 in Azure AD.For more information, OAuth 2.0 in Azure AD.

  • Rollenbasierte Autorisierung (RBAC): Um RBAC in der Azure AD Graph-API ausführen zu können, werden Sicherheitsgruppen verwendet.Role-Based Authorization (RBAC): Security groups are used to perform RBAC in Azure AD Graph API. Wenn Sie beispielsweise ermitteln möchten, ob ein Benutzer über Zugriff auf eine bestimmte Ressource verfügt, kann die Anwendung den unter Überprüfen der Gruppenmitgliedschaft (transitiv) beschriebenen Vorgang aufrufen, der TRUE oder FALSE zurückgibt.For example, if you want to determine whether a user has access to a specific resource, the application can call the Check group membership (transitive) operation, which returns true or false.

  • Differenzielle Abfrage: Mit einer differenziellen Abfrage können Sie ohne mehrfaches Abfragen der Azure AD Graph-API Änderungen an einem Verzeichnis zwischen zwei Zeiträumen nachverfolgen.Differential Query: Differential query allows you to track changes in a directory between two time periods without having to make frequent queries to Azure AD Graph API. Dieser Anforderungstyp gibt nur die Änderungen zurück, die zwischen der vorherigen differenziellen Abfrageanforderung und der aktuellen Anforderung erfolgt sind.This type of request will return only the changes made between the previous differential query request and the current request. Weitere Informationen finden Sie unter Differenzielle Abfrage der Azure AD Graph-API.For more information, see Azure AD Graph API differential query.

  • Verzeichniserweiterungen: Sie können Verzeichnisobjekten benutzerdefinierte Eigenschaften ohne externen Datenspeicher hinzufügen.Directory Extensions: You can add custom properties to directory objects without requiring an external data store. Wenn Ihre Anwendung beispielsweise eine Skype-ID-Eigenschaft für jeden Benutzer erfordert, können Sie die neue Eigenschaft im Verzeichnis registrieren. Sie steht dann für jedes Benutzerobjekt zur Verfügung.For example, if your application requires a Skype ID property for each user, you can register the new property in the directory and it will be available for use on every user object. Weitere Informationen finden Sie unter Verzeichnisschemaerweiterungen der Azure AD Graph-API.For more information, see Azure AD Graph API directory schema extensions.

  • Gesichert durch Berechtigungsbereiche: Die Azure AD Graph-API macht Berechtigungsbereiche verfügbar, die einen sicheren Zugriff auf Azure AD-Daten mithilfe von OAuth 2.0 ermöglichen.Secured by permission scopes: Azure AD Graph API exposes permission scopes that enable secure access to Azure AD data using OAuth 2.0. Eine Vielzahl von Client-App-Typen wird unterstützt, einschließlich:It supports a variety of client app types, including:

    • Benutzeroberflächen, die über die Autorisierung des angemeldeten Benutzers delegierten Zugriff auf Daten erhalten (delegiert)user interfaces that are given delegated access to data via authorization from the signed-in user (delegated)

    • Dienst-/Daemon-Anwendungen, die im Hintergrund ohne einen angemeldeten Benutzer ausgeführt werden und eine anwendungsspezifische rollenbasierte Zugriffssteuerung verwendenservice/daemon applications that operate in the background without a signed-in user being present and use application-defined role-based access control

      Sowohl delegierte als auch auf Anwendungsberechtigungen stellen eine durch die Azure AD Graph-API verfügbar gemachte Berechtigung dar und können von Clientanwendungen über Features für Anwendungsregistrierungsberechtigungen im Azure-Portal angefordert werden.Both delegated and application permissions represent a privilege exposed by the Azure AD Graph API and can be requested by client applications through application registration permissions features in the Azure portal. Azure AD Graph-API-Berechtigungsbereiche enthält Informationen dazu, was zur Verwendung in Ihrer Clientanwendung verfügbar ist.Azure AD Graph API permission scopes provides information on what's available for use by your client application.

SzenarienScenarios

Die Azure AD Graph-API ermöglicht eine Vielzahl von Anwendungsszenarios.Azure AD Graph API enables many application scenarios. Die gängigsten Szenarios sind die folgenden:The following scenarios are the most common:

  • Branchenanwendung (Einzelinstanz): In diesem Szenario arbeitet ein Unternehmensentwickler für eine Organisation, die über ein Office 365-Abonnement verfügt.Line of Business (Single Tenant) Application: In this scenario, an enterprise developer works for an organization that has an Office 365 subscription. Der Entwickler erstellt eine Webanwendung, die mit Azure AD interagiert, um Aufgaben wie das Zuweisen einer Lizenz zu einem Benutzer auszuführen.The developer is building a web application that interacts with Azure AD to perform tasks such as assigning a license to a user. Für diese Aufgabe ist der Zugriff auf die Azure AD Graph-API erforderlich. Der Entwickler registriert daher die Einzelinstanzanwendung in Azure AD und konfiguriert Lese- und Schreibberechtigungen für die Azure AD Graph-API.This task requires access to the Azure AD Graph API, so the developer registers the single tenant application in Azure AD and configures read and write permissions for Azure AD Graph API. Anschließend wird die Anwendung für die Verwendung eigener Anmeldeinformationen oder der Anmeldeinformationen des aktuell angemeldeten Benutzers konfiguriert, um ein Token zum Aufrufen der Azure AD Graph-API abzurufen.Then the application is configured to use either its own credentials or those of the currently sign-in user to acquire a token to call the Azure AD Graph API.
  • Software-as-a-Service-Anwendung (mehrinstanzenfähig): In diesem Szenario entwickelt ein unabhängiger Softwarehersteller (Independent Software Vendor, ISV) eine gehostete mehrinstanzenfähige Webanwendung, von der Benutzerverwaltungsfunktionen für andere Organisationen bereitgestellt werden, die Azure AD verwenden.Software as a Service Application (Multi-Tenant): In this scenario, an independent software vendor (ISV) is developing a hosted multi-tenant web application that provides user management features for other organizations that use Azure AD. Da für diese Features Zugriff auf Verzeichnisobjekte erforderlich ist, muss die Anwendung die Azure AD Graph-API aufrufen.These features require access to directory objects, so the application needs to call the Azure AD Graph API. Der Entwickler registriert die Anwendung in Azure AD und konfiguriert sie so, dass Lese- und Schreibberechtigungen für die Azure AD Graph-API erforderlich sind. Anschließend aktiviert er den externen Zugriff, damit andere Organisationen der Verwendung der Anwendung in ihrem Verzeichnis zustimmen können.The developer registers the application in Azure AD, configures it to require read and write permissions for Azure AD Graph API, and then enables external access so that other organizations can consent to use the application in their directory. Wenn sich ein Benutzer in einer anderen Organisation erstmals bei der Anwendung authentifiziert, wird ein Zustimmungsdialogfeld mit den Berechtigungen angezeigt, die die Anwendung anfordert.When a user in another organization authenticates to the application for the first time, they are shown a consent dialog with the permissions the application is requesting. Durch die Zustimmung erhält die Anwendung dann die angeforderten Berechtigungen für die Azure AD Graph-API im Verzeichnis des Benutzers.Granting consent will then give the application those requested permissions to Azure AD Graph API in the user’s directory. Weitere Informationen zum Consent Framework finden Sie unter Übersicht über das Consent Framework.For more information on the consent framework, see Overview of the consent framework.

Nächste SchritteNext steps

Um mit der Verwendung der Azure Active Directory Graph-API zu beginnen, lesen Sie die folgenden Themen:To begin using the Azure Active Directory Graph API, see the following topics: