如何在dotnet核心上实现服务器端谷歌授权

时间:2017-08-08 22:56:21

标签: android in-app-purchase .net-core in-app-billing google-api-dotnet-client

我需要在我的Android应用程序的应用内购买中实现服务器端验证,在Linux上运行的C#dotnet核心平台。

我已经多次阅读this page,最后发现了this issue,这表明我并不孤单。看起来谷歌目前并没有完全直接支持dotnet核心。

是否有人可以使用任何第三方库实现此目的?

2 个答案:

答案 0 :(得分:1)

据我所知.Net Core没有Oauth2服务器实现(但是?)......

评论here的可能性很少,但最常用的是Identity Server(可以集成到您的自定义ASP Net Core项目中并完成工作的事情)

  

“IdentityServer4是一个OpenID Connect和OAuth 2.0框架   ASP.NET核心。“

主要链接:http://docs.identityserver.io/en/release/index.html

添加对外部身份验证的支持: http://docs.identityserver.io/en/release/quickstarts/4_external_authentication.html?highlight=google

看看设置和OVerview部分,你会发现这符合你的需求(我很确定)

我希望它有所帮助,

答案 1 :(得分:1)

您链接的问题是关于用户通过MVC登录。

如果您想使用服务帐户:

  • 如果您的服务器位于Google云端(例如计算引擎,容器引擎或应用引擎),您就不需要做任何事情
  • 否则,请按照the instructions here下载服务帐户JSON文件,并确保服务器具有该文件的本地访问权限,然后:
    • 设置GOOGLE_APPLICATION_CREDENTIALS环境变量并使用GoogleCredential.GetApplicationDefault
    • 使用新的GoogleCredential.FromFile方法(在客户端库支持包的1.29.0中引入)