使用WCF RESTful服务检查服务器上是否存在用户登录名和密码

时间:2013-11-11 12:12:47

标签: c# wcf rest

我正在使用C#,.NET Framework 4.0和Entity Framework 4.4.0.0开发WCF RESTful Web服务。

在SQL Server数据库中,我有一个包含用户的表,我想检查该表上是否存在发送登录名和密码的用户。

我有一个URI:/users/{user_id} GET 用户使用UserId

我认为,我可以这样做:/users/login/{login}/password/{password}但我不知道这是否是正确的方法,因为登录和密码是公开的。

如何检查是否存在具有相同登录名和密码的用户而不在URI上显示?(可能,/users/login/{login}/password/{password},这是正确的方法。)

注意:密码已加密。

2 个答案:

答案 0 :(得分:1)

如果您正在构建RESTful API,那么它实际上应该是无状态的 - 这意味着在每个请求上发送用户/密码或在每个请求上发送令牌。

您需要在SSL下运行该网站才能确保其安全。您的用户/密码或令牌应位于标题中。对于一个简单的网站,我建议使用基本的HTTP身份验证(如果你不知道它是什么,谷歌它)。您对base64编码用户名/密码,并将其与每个请求一起发送。看看这里:

http://www.codeproject.com/Articles/149738/Basic-Authentication-on-a-WCF-REST-Service

还有一件事 - 我可能错了,因为我不知道你项目的细节,但我认为你不需要'确认'服务。这听起来像是为了登录的目的。我建议用户登录时将它们引导到仪表板或登陆区域。如果此时用户未经过身份验证,则重定向到登录。

答案 1 :(得分:0)

相关问题