繁体   English   中英

Microsoft Graph - 授权流程 - 从控制台应用程序获取授权代码

[英]Microsoft Graph - Authorization Flow - Get Authorization Code from Console App

我有一个 Azure AD 注册应用程序和一个 AD 用户。 我想在我的 c# 控制台应用程序中使用授权流程来首先获取本文https://docs.microsoft.com/en-us/graph/auth-v2-user中提到的授权码,然后交换该授权码获取访问令牌。 我最终想存储访问令牌和刷新令牌并将其用于离线场景。

我创建了一个 Httpclient 并进行了发布请求以获取授权码,但没有弹出 Microsoft 同意屏幕。

这甚至可以通过控制台应用程序实现,还是我必须有一个 web 应用程序才能做到这一点? 任何可以帮助我的样本或文章?

HttpClient 将仅返回 HTML 用于从 login.microsoftonline.com 登录,但无处显示它。 HttpClient 可以执行 GET、POST 等操作,但不是 web 视图。

我从未测试过从控制台应用程序启动 webview,所以我不确定它是否可能。 它可以从 PowerShell 完成,但这与控制台应用程序不同。 你可以检查一下。

或者您可以让用户在控制台应用程序中输入用户名和密码,并使用“密码”授权类型流程来获取访问令牌。 不推荐,但有可能。 您可以在此处阅读有关密码授予类型流程的更多信息:

https://docs.microsoft.com/en-us/azure/active-directory/develop/v2-oauth-ropc

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM