我刚接触OAuth,很难理解它背后的工作流程。
据我所知,当我尝试通过OAuth验证凭据时,我会向登录服务器发送一个请求,它会接管并让用户登录到站点本身。如果凭据有效,则访问OAuth请求的回调URL,并将令牌附加到该回调URL。此令牌必须与所有将来的HTTP请求一起传递到服务器,并用作用户凭据的验证。
我感到困惑的是,如何使此过程适用于没有服务器的桌面应用程序?我使用什么作为回调URL,如果我只是在桌面上运行.NET应用程序,我如何检索令牌?
谢谢!
发布于 2012-05-15 18:59:14
这取决于您希望支持哪些服务提供商。
谷歌在这里很好地描述了如何在“已安装的应用程序”中使用OAuth 2.0:https://developers.google.com/accounts/docs/OAuth2InstalledApp
一般来说,有几种不同的策略:
如果您的OOB2.0提供商不支持OAuth,您也可以重定向到您自己的web服务器来完成类似的任务。
最大的问题是,您这样做是为了身份验证(获取用户身份)还是授权(通过web API访问用户数据)。如果您正在尝试对用户进行身份验证,则需要一些可以信任的服务器端逻辑来传递用于验证的授权码或访问令牌。
https://stackoverflow.com/questions/10603729
复制相似问题