2017-10-05 5 views
1

Comment puis-je accéder aux e-mails de toutes les boîtes aux lettres d'un domaine à l'aide de l'API graphique?Lire/Supprimer des e-mails de toutes les boîtes aux lettres Outlook365

J'essaie actuellement, en utilisant l'Explorateur de Graph, d'obtenir les propriétés d'un certain email dans une boîte aux lettres dans mon domaine. Le compte de bureau auquel je suis connecté est un compte Admin dans ce domaine.

Par exemple:

mon utilisateur est [email protected] et possède les autorisations suivantes dans le graphique Mail.ReadWrite.

je peux utiliser avec succès la requête suivante:

/v1.0/users/[email protected]/messages?$filter=internetMessageId eq '{id}' 

Mais quand je tente:

/v1.0/users/[email protected]/messages?$filter=internetMessageId eq '{id}' 

Il renvoie une exception 403.

Y a-t-il un problème avec le jeu d'autorisations ou le admin_user ne dispose-t-il pas de droits suffisants sur la boîte aux lettres pour other_user?

Répondre

1

C'est exact, Mail.ReadWrite donne uniquement accès à la boîte aux lettres de l'utilisateur actuel. Ceci est vrai même si elles sont un administrateur. La seule façon de contourner ce problème serait d'utiliser App seulement (aka client_credentials). Cela permettrait à votre application de lire/écrire n'importe quelle boîte aux lettres sur le système. Voir Get access without a user.