【问题标题】:Acquiring OAuth2 access tokens for Exchange Management Shell cmdlets获取 Exchange 命令行管理程序 cmdlet 的 OAuth2 访问令牌
【发布时间】:2020-09-10 11:39:44
【问题描述】:
【问题讨论】:
标签:
adal
msal
exchange-management-shell
【解决方案1】:
- MSAL 和 ADAL 是专为通过 OAuth 进行身份验证而设计的库,是的,您可以在不使用 MSAL 或 ADAL 的情况下直接使用 OAuth 获取令牌。您可以直接使用 Oauth and OpenID Connect。通过管理来自 URL 的 Get 和 Post 请求,编写代码非常容易。
- 当您当前的访问令牌过期时,刷新令牌用于获取新的访问令牌。如需更多信息,请参阅document。
- 浏览器的使用取决于您使用的身份验证流程。例如Device code flow 不需要浏览器。
【解决方案2】:
哦,其实一切都很简单:
- 请求授权码:
https://login.microsoftonline.com/common/oauth2/authorize?redirect_uri=http%3A%2F%2Flocalhost%3A55555&client_id=a0c73c16-a7e3-4564-9a95-2bdf47383716&response_type=code
-
请求访问令牌:
- 网址:
https://login.microsoftonline.com/common/oauth2/token
- 正文:
resource=https%3A%2F%2Foutlook.office365.com&client_id=a0c73c16-a7e3-4564-9a95-2bdf47383716&redirect_uri=http%3A%2F%2Flocalhost%3A9999&code=YOUR_AUTHORIZATION_CODE&client_secret=&grant_type=authorization_code