2017-10-09 51 views
0

我需要开发一个外部API,并且我希望使用客户端ID和密钥(如Facebook,Twitter,Google和Microsoft)进行身份验证。Facebook,Twitter和Google等Web API身份验证

我已阅读了一些关于OAuth2的教程,但他生成的令牌是临时的,并且客户端需要传递用户名和密码才能获得令牌。

所以,我想要的是给每个客户端使用我的API的客户端ID和密钥,他们应该在他们调用的每个方法上传递这些数据。在返回结果之前,API会检查请求是否有效。

这样做的最好方法是什么?

+0

那么你的问题是什么?只需使用[this](https://msdn.microsoft.com/en-us/library/wb9c8c67(v = vs.110).aspx)生成随机字节数组,然后使用[this]将其转换为base64(https:/ /msdn.microsoft.com/en-us/library/dhx0d524(v=vs.110).aspx)并将该字符串存储到每个用户的db中。这个字符串将是一个API密钥 –

+0

如果你想标准实现它的OAuth2协议..对于.net有多个服务器实现你可以使用.https://github.com/aspnet/Home/issues/1557 –

回答