2015-12-08 1 views
1

J'utilise Microsoft Grap API pour signer les utilisateurs sur mon application Web et obtenir leur profil de base. J'ai suivi toutes les étapes sur the microsoft overview.Microsoft Graph REST API Erreur AADSTS65001 sur la demande de jeton d'accès avec des comptes en direct

Avec un e-mail en direct (et essayé outlook.fr hotmail.com), je suis arrivé cette erreur tout en demandant le jeton d'accès:

AADSTS65001: No permission to access user information is configured for 'MyAppId' application, or it is expired or revoked. 

Y at-il quelque chose que je suis absent? Je n'ai configuré qu'une seule permission sur mon application Azur Portal, sous les permissions déléguées par microsoft api: "Se connecter et lire le profil de l'utilisateur". Aucune autre autorisation d'application.

Et quand j'essaye avec un compte Office365, tout fonctionne bien. Je pourrais même appeler https://graph.microsoft.com/v1.0/me et obtenir le résultat.

J'ai vérifié mon URL_réponse et correspond à la demande d'autorisation et à la demande de jeton d'accès. J'ai activé l'option APPLICATION IS MULTI-TENANT et j'ai modifié le fichier manifeste, sauf que tout est par défaut.

Est-ce que l'API Microsoft Graph peut gérer la connexion en direct à mon application Web? Si oui, quelqu'un peut-il m'aider à comprendre où je me trompe?

Voici mon lien d'autorisation qui fonctionne bien avec un compte:

https://login.microsoftonline.com/common/oauth2/authorize?response_type=code&client_id=MyClientId&redirect_uri=MyUri 

Et voici mon accès lien demande de jeton:

https://login.microsoftonline.com/common/oauth2/token 
POST data : grant_type=authorization_code&code=MyCode&client_id=MyClientId&client_secret=MySecret&resource=https%3A%2F%2Fgraph.microsoft.com%2F&redirect_uri=MyUri 

Répondre

2

Afin de pouvoir utiliser Live ID/Microsoft Les comptes en plus des comptes Azure Active Directory utilisent le nouveau flux d'autorisation convergé comme décrit dans https://graph.microsoft.io/docs/authorization/converged_auth.

Au lieu d'enregistrer votre application via le portail Azure vous aurez besoin d'utiliser https://apps.dev.microsoft.com et au lieu de déclarer statiquement autorisations délégués pour votre application, il sera en mesure de demander dynamiquement autorisations à l'aide d'un paramètre de requête de portée lorsque vous demandez un jeton ou un code de https://login.microsoftonline.com/common/oauth2/v2.0 .

+0

Merci beaucoup, je vais devoir attendre une version stable alors! – Clemator