2017-02-02 31 views
5

Próbuję autoryzować dostęp do naszej aplikacji internetowej przy użyciu OAuth 2.0 i Azure AD. Przewodnik here.OAuth 2.0 i Azure Active Directory - błąd AADSTS90009

Użytkownik zostaje przekierowany na podobnym adresem URL:

https://login.microsoftonline.com/common/oauth2/authorize? 
    client_id=d220846b-1916-48d2-888b-9e16f6d9848b& 
    response_type=code& 
    response_mode=query& 
    state=[secure-random]& 
    redirect_uri=[my_uri]& 
    resource=[my app ID uri taken from app settings] 

Dostaję następujący błąd następnie:

AADSTS90009: application 'd220846b-1916-48d2-888b-9e16f6d9848b' jest żądanie tokena dla siebie. Ten scenariusz jest obsługiwany tylko wtedy, gdy określono zasób przy użyciu identyfikatora aplikacji opartego na identyfikatorze GUID.

Ten opis bardzo mi nie pomaga. Sprawdziłem to thread, ale wciąż jestem zagubiony.

Co oznacza ten błąd i jaki jest Identyfikator aplikacji oparty na identyfikatorze GUID? Jak powinna wyglądać wartość zasobu? Pomoc bardzo doceniona.

Odpowiedz

14

Ten błąd mówi, że pole podane w parametrze resource żąda samemu tokenów. W przypadku, gdy chcesz uzyskać token dla aplikacji określonej w id_klienta, musisz przekazać identyfikator klienta w polu zasobów, a nie identyfikator URI identyfikatora aplikacji. W tym momencie otrzymasz token dostępu dla siebie.

Można również podać identyfikator URI aplikacji zarejestrowanego interfejsu API sieci Web lub inny zasób z zakresami, aby uzyskać tokeny dla tego zasobu (Microsoft Graph, Office API itp.).

+1

Dzięki, byłem trochę zdezorientowany - chciałem użyć wykresu Microsoft, więc to powinien być mój zasób. Mam teraz swój token. Dzięki jeszcze raz! –

+0

Wielkie dzięki, zaoszczędziło mi 4 godziny co najmniej –

+0

Podobnie, znalezienie odpowiedzi było bardzo satysfakcjonujące po kilku godzinach debugowania w niedzielę. Jednak mieszane emocje; Nie wiem, dlaczego nie działa z identyfikatorem URI aplikacji (w ten sam sposób jak na przykład w witrynie graph.microsoft.com), ponieważ identyfikator URI i identyfikator klienta są unikalne. W każdym razie, niezależnie - jesteś mistrzem, dzięki. – markau