C#-具有Web API和Xamarin的OAuth 2.0

我是Web开发的新手,所以请多多包涵.

>我已经用C#(非Web应用程序)开发了一个后端服务器,该服务器通过Web API(OWIN和Katana)中实现的REST API公开了一些功能.
>我已经开发了使用该API的Xamarin android应用.

现在,我只想为使用Google身份验证的用户启用API的使用.

我知道OAuth是实现此目标的方法,并且我已经阅读了很多有关它的内容,但是我仍然对这里的角色以及谁应该做什么感到困惑.

我的服务器应该做什么或实现什么?我的客户应该怎么做或实施?

解决方法:

OAuth2需要注意的一个重要功能是两种不同的身份验证流类型:

>隐式身份验证流程
>显式身份验证流程

我个人已经找到了Instagram API文档,可以很好地解释这一点:
https://instagram.com/developer/authentication/

显式身份验证流程有些棘手,因为它涉及您的自定义API方面的额外协调.隐式身份验证流程要容易一些,因为您的应用程序将仅查找从OAuth提供程序返回的URL片段.该URL片段包含一个令牌,您可以使用该令牌随后调用要与之交谈的API(以您为例).

但是就您而言,这听起来像您想使用Google作为自定义API的身份提供者,对吗?在这种情况下,我认为您需要使用显式身份验证流.同样,请查看Instagram文档.我发现他们特别擅长于解释OAuth2.

编辑:

并且请注意Xamarin.Auth组件,该组件旨在简化OAuth方案.您可以在Xamarin Component StoreGithub上找到它.

上一篇:C#-MvvmCross自定义事件绑定事件Args


下一篇:android-Mvvmcross:无法在活动的OnCreate中创建MvxRecyclerAdapter