2

我正在构建一个为某些应用程序提供数据的Web API。C#web api上用户身份验证的最佳做法是什么?

这个场景就像Server001上的一个web api托管的方法GET/POST/PUT/Delete可用。

Server002是另一种技术的网站,例如PHP,它将使用提供API的数据向用户展示。网站/ ios/android/wp8其他应用程序也可以从我的webapi获取数据(当然,权限为web api)。

所以我想为注册的每个应用程序生成密钥。每个Get/Post的头文件都会发送这个密钥,这样我知道应用程序是否被允许。

之后,我想想用户如何登录?如果用户在IOS APP中通过PHP请求日志,我想知道并想要显示给他。因为Gmail今天可以。所以我需要管理应用程序以及每个用户登录的位置。我怎么能这样做?有准备好的解决方案?

在MemoryCache上保存所有登录到所有应用程序的用户是否正确?如果我有成千上万的用户在同一时间连接成为一个问题,我很害怕吗?

我在安全方面是全新手,我不想在三个月后重做它。

谢谢

回答

1

我认为它将对你有好处:OAuth(非标准授权)。
DotNetOpenAuth - 用于.NET的OAuth库。

+0

如果你有任何与DotNetOpenAuth的样本的链接,请让我知道。我会阅读有关:) – 2013-05-05 18:10:54

+0

请参阅此处:[https://github.com/DotNetOpenAuth/DotNetOpenAuth.Samples](https://github.com/DotNetOpenAuth/DotNetOpenAuth.Samples) – 2013-05-06 09:14:27

相关问题