我一直在使用 MSALMicrosoft.Identity.Client.ConfidentialClientApplication来执行仅限应用的 Microsoft Graph - Groups 操作。
var RedirectUri = "urn:ietf:wg:oauth:2.0:oob";
var clientApplication = new ConfidentialClientApplication(ClientId, RedirectUri, new ClientCredential(ClientSecret), null);
我被困在下一步:
authenticationResult = clientApplication.AcquireTokenSilentAsync(new string[]{"Group.ReadWrite.All"}).GetAwaiter().GetResult();
我得到错误failed_to_acquire_token_silently。
authenticationResult = clientApplication.AcquireTokenForClient(new string[]{"Group.ReadWrite.All"}, string.Empty).GetAwaiter().GetResult();
我得到错误invalid_scope。
不确定我应该继续哪个方向。
笔记:
- 使用
PublicClientApplication相同的代码可以正常工作 - 该应用同时具有 AppOnly
Group.ReadWrite.All和 DelegateGroup.ReadWrite.All权限 - 有
PublicClienApplication一个不需要的 UI 对话框...
var clientApplication = new PublicClientApplication(ClientId);
authenticationResult = clientApplication.AcquireTokenAsync(Scopes).GetAwaiter().GetResult();