Beheben von Microsoft Graph-AutorisierungsfehlernResolve Microsoft Graph authorization errors

Autorisierungsfehler können als Ergebnis verschiedener Probleme auftreten, von denen die meisten einen 403-Fehler (mit einigen Ausnahmen) generieren.Authorization errors can occur as a result of several different issues, most of which generate a 403 error (with a few exceptions). Die folgenden Beispiele können zu Autorisierungsfehlern führen:For example, the following can all lead to authorization errors:

Schritte zur Lösung häufiger FehlerSteps to resolve common errors

Um häufige Autorisierungsfehler zu beheben, probieren Sie die für den Fehler beschriebenen Schritte aus, die dem Fehler, den Sie erhalten, am ehesten entsprechen.To resolve common authorization errors, try the steps described for the error that most closely match the error you're getting. Möglicherweise liegt mehr als ein Fehler vor.More than one error might apply. Sie können auch die bereits verfügbaren Antworten auf Stapelüberlauf auf 401-Fehler und 403-Fehler überprüfen.You can also check the answers already available on Stack Overflow for 401 errors and 403 errors. Wenn Sie keine Lösung für Ihr Problem finden, stellen Sie eine neue Frage zu Stapelüberlauf, und markieren Sie sie mit microsoft-graph.If you can't find a solution to your problem, ask a new question on Stack Overflow and tag with microsoft-graph.

Fehler „401 Unauthorized“: Ist Ihr Token gültig?401 Unauthorized error: Is your token valid?

Stellen Sie sicher, dass Ihre Anwendung im Rahmen der Anforderung ein gültiges Zugriffstoken für Microsoft Graph vorweist.Make sure that your application is presenting a valid access token to Microsoft Graph as part of the request. Dieser Fehler bedeutet oft, dass das Zugriffstoken im HTTP-Authentifizierungsanforderungs-Header fehlen kann oder dass das Token ungültig oder abgelaufen ist.This error often means that the access token may be missing in the HTTP authenticate request header or that the token is invalid or has expired. Wir empfehlen dringend, für den Erwerb von Zugriffstoken die Microsoft Authentication Library (MSAL) zu verwenden.We strongly recommend that you use the Microsoft Authentication Library (MSAL) for access token acquisition. Außerdem kann dieser Fehler auftreten, wenn Sie versuchen, mit einem delegierten Zugriffstoken, das für ein persönliches Microsoft-Konto gewährt wurde, auf eine API zuzugreifen, die nur Geschäfts-, Schul- oder Unikonten (Organisationskonten) unterstützt.Additionally this error may occur, if you try to use a delegated access token granted to a personal Microsoft account, to access an API that only supports work or school accounts (organizational accounts).

Fehler „403 Forbidden“: Haben Sie den richtigen Berechtigungssatz ausgewählt?403 Forbidden error: Have you chosen the right set of permissions?

Überprüfen Sie, dass Sie basierend auf den Microsoft Graph-APIs, die von Ihrer Anwendung aufgerufen werden, den richtigen Satz von Berechtigungen angefordert haben.Verify that you have requested the correct set of permissions based on the Microsoft Graph APIs your app calls. Die Berechtigungen zu den geringsten Rechten, die wir empfehlen, sind in allen Referenzthemen zu Microsoft Graph-API-Methoden enthalten.The least privileged permissions that we recommend are provided in all the Microsoft Graph API method reference topics. Darüber hinaus müssen diese Berechtigungen durch einen Benutzer oder einen Administrator für die Anwendung gewährt werden.Additionally, those permissions must be granted to the application by a user or an administrator. Berechtigungen werden normalerweise über eine Zustimmungsseite oder mithilfe des Anwendungsregistrierungblatts im Azure Portal gewährt.Granting permissions normally happens through a consent page or by granting permissions using the Azure Portal application registration blade. Klicken Sie auf dem Blatt Einstellungen für die Anwendung auf Erforderliche Berechtigungen und dann auf Berechtigungen gewähren.From the Settings blade for the application, click Required Permissions, and then click Grant Permissions.

Fehler „403 Forbidden“: Hat Ihre Anwendung ein Token erworben, das den ausgewählten Berechtigungen entspricht?403 Forbidden error: Did your app acquire a token to match chosen permissions?

Stellen Sie sicher, dass die Art der angeforderten oder gewährten Berechtigungen mit der Art des Zugriffstokens übereinstimmt, das von Ihrer App erworben wird.Make sure that the type of permissions requested or granted matches the type of access token that your app acquires. Möglicherweise fordern Sie Anwendungsberechtigungen an und gewähren diese, verwenden aber delegierte interaktive Codefluss-Token anstelle von Clientanmeldeinformationsfluss-Token, oder Sie fordern delegierte Berechtigungen an und gewähren diese, verwenden aber Clientanmeldeinformationsfluss-Token anstelle delegierter Codefluss-Token.You might be requesting and granting application permissions but using delegated interactive code flow tokens instead of client credential flow tokens, or requesting and granting delegated permissions but using client credential flow tokens instead of delegated code flow tokens.

Fehler „403 Forbidden“: Passwort zurücksetzen403 Forbidden error: Resetting password

Derzeit gibt es keine Anwendungsberechtigungs-Daemon-Dienst-zu-Dienst-Berechtigungen, die das Zurücksetzen von Benutzerkennwörtern zulassen.Currently, there are no application permission daemon service-to-service permissions that allow resetting user passwords. Diese APIs werden nur unter Verwendung der interaktiven delegierten Codeflüsse mit einem angemeldeten Administrator unterstützt.These APIs are only supported using the interactive delegated code flows with a signed-in administrator.

„403 Forbidden“: Hat der Benutzer Zugriff und ist er lizenziert?403 Forbidden: Does the user have access and are they licensed?

Bei delegierten Codeflüssen wertet Microsoft Graph aus, ob die Anforderung auf der Grundlage der der Anwendung gewährten Berechtigungen und der Berechtigungen, die der angemeldete Benutzer hat, zulässig ist.For delegated code flows, Microsoft Graph evaluates whether the request is allowed based on the permissions granted to the app and the permissions that the signed-in user has. Dieser Fehler deutet im Allgemeinen darauf hin, dass der Benutzer nicht genügend Rechte besitzt, die Anforderung auszuführen, oder dass der Benutzer nicht für die Daten lizenziert ist, auf die zugegriffen wird.Generally, this error indicates that the user is not privileged enough to perform the request or the user is not licensed for the data being accessed. Nur Benutzer mit den erforderlichen Berechtigungen oder Lizenzen können die Anfrage erfolgreich stellen.Only users with the required permissions or licenses can make the request successfully.

„403 Forbidden“: Haben Sie die richtige Ressourcen-API ausgewählt?403 Forbidden: Did you select the correct resource API?

API-Dienste wie Microsoft Graph überprüfen, ob der aud-Anspruch (Zielgruppe) im empfangenen Zugriffstoken mit dem Wert übereinstimmt, den es für sich selbst erwartet, und wenn nicht, führt dies zu einem 403 Forbidden-Fehler.API services like Microsoft Graph check that the aud claim (audience) in the received access token matches the value it expects for itself, and if not, it results in a 403 Forbidden error. Ein häufiger Fehler, der diesen Fehler verursacht, ist der Versuch, ein für Azure AD-Graph-APIs, Outlook-APIs oder Microsoft Office SharePoint Online-/OneDrive-APIs erworbenes Token zu verwenden, um Microsoft Graph aufzurufen (oder umgekehrt).A common mistake that causes in this error is trying to use a token acquired for Azure AD Graph APIs, Outlook APIs, or SharePoint/OneDrive APIs to call Microsoft Graph (or vice versa). Stellen Sie sicher, dass die Ressource (oder der Geltungsbereich), für die Ihre Anwendung ein Token erwirbt, mit der API übereinstimmt, die von der Anwendung aufgerufen wird.Ensure that the resource (or scope) your app is acquiring a token for matches the API that the app is calling.

„400 Bad Request“ oder „403 Forbidden“: Entspricht der Benutzer die Richtlinien für den bedingten Zugriff (CA) des Unternehmens?400 Bad Request or 403 Forbidden: Does the user comply with their organization's conditional access (CA) policies?

Basierend auf den CA-Richtlinien einer Organisation kann ein Benutzer, der über Ihre Anwendung auf Microsoft Graph-Ressourcen zugreift, zur Angabe zusätzlicher Informationen aufgefordert werden, die nicht in dem Zugriffstoken enthalten sind, das Ihre Anwendung ursprünglich erworben hat.Based on an organization's CA policies, a user accessing Microsoft Graph resources via your app might be challenged for additional information that is not present in the access token your app originally acquired. In diesem Fall empfängt Ihre Anwendung den Fehler „400“ mit interaction_required beim Erwerb des Zugriffstokens oder den Fehler „403“ mit insufficient_claims beim Aufruf von Microsoft Graph.In this case, your app receives a 400 with an interaction_required error during access token acquisition or a 403 with insufficient_claims error when calling Microsoft Graph. In beiden Fällen enthält die Fehlerantwort zusätzliche Informationen, die dem autorisierenden Endpunkt vorgewiesen werden können, um den Benutzer um zusätzliche Informationen zu bitten (wie Multi-Faktor-Authentifizierung oder Geräteregistrierung).In both cases, the error response contains additional information that can be presented to the authorize endpoint to challenge the user for additional information (like multi-factor authentication or device enrollment).