Nous avions un problème similaire : nous voulions utiliser un compte de service pour nous connecter à une seule boîte aux lettres et effectuer quelques opérations avec l'API EWS (par exemple, rechercher dans la GAL), et full_access_as_app semblait excessif.
Heureusement, c'est possible :
-
Suivez les étapes normales de "délégation"
-
Et utilisez ceci pour obtenir un jeton via nom d'utilisateur/mot de passe :
...
var cred = new NetworkCredential("UserName", "Password");
var authResult = await pca.AcquireTokenByUsernamePasswor