MS Graph API: invalid token d'authentification

Je suis en train d'utiliser le Microsoft Graph API pour interroger un Outlook/O365 boîte aux lettres les messages. Je enregistré mon app dans le portail Azure et reçu les informations nécessaires à la requête de l'API. L'application a la Mail.Read autorisation. (Je n'ai pas accès au portail Azure, on m'a dit qu'il a été créé de cette façon.) Quand je reçois mon jeton OAuth au point de terminaison, mais il ne fonctionne pas dans tous les appels suivants. Je suis à l'aide de Python demandes du module pour tester maintenant.

Pourquoi est-ce appelle l'échec? Il me semble que je suis de passage tous les renseignements exacts, mais je suis clairement en manque de quelque chose.

Je suis le jeton à l'exécution d'une POST sur:

https://login.microsoftonline.com/my.domain/oauth2/token

Je passe les paramètres nécessaires:

data = {'grant_type': 'client_credentials', 'client_id': CLIENTID, 'client_secret': SECRET, 'resource': APPURI}

et je reçois une réponse comme celle-ci:

{
    'resource': 'APPURI',
    'expires_in': '3599',
    'ext_expires_in': '3600',
    'access_token': 'TOKENHERE',
    'expires_on': '1466179206',
    'not_before': '1466175306',
    'token_type': 'Bearer'
}

J'essaie d'utiliser ce jeton, cependant, et il ne fonctionne pas pour rien que je l'appel. Je suis de passage comme un en-tête:

h = {'Authorization': 'Bearer ' + TOKEN}

Je suis à l'appel de cette URL:

url = 'https://graph.microsoft.com/v1.0/users/[email protected]/messages'

Précisément, j'utilise ceci:

r = requests.get(url, headers=h)

La réponse est un 401:

{
    'error': {
        'innerError': {
            'date': '2016-06-17T15:06:30',
            'request-id': '[I assume this should be removed for privacy]'
         },
         'code': 'InvalidAuthenticationToken',
         'message': 'Access token validation failure.'
     }
}

OriginalL'auteur vaindil | 2016-06-17