1

我有一个 WCF 应用程序,我可以在其中调用 JavaScript。我想保护 Web 服务,因此您必须登录才能使用它。如果我有一个服务器端应用程序向 WCF 发出请求,这很容易。如果我使用的是纯 JavaScript / jQuery 客户端应用程序,我可以通过将凭据作为 JSON 参数传递来很好地进行身份验证,但是如何让该客户端应用程序从那时起保持登录状态?我要存储 cookie 吗?我当然不想将凭据存储在 cookie 中,因为这不安全。那么如何在不引入另一个服务器端应用程序的情况下实现这一点呢?Web 应用程序如何实现这一点?

4

2 回答 2

1

OAuth是一种适用于 JS API 的解决方案。 NetflixYelpFacebook等使用这个。

这是一篇关于WCF中 OAuth 的文章

这是一个非常著名的用于在 .NET 中进行身份验证的库:DotNetOpenAuth

于 2012-04-13T00:29:50.993 回答
1

如果您使用或正在使用 ASP.Net 表单身份验证(WCF 应该在 ASP.Net 兼容模式下运行),那么没有什么可做的。

如果您在初始身份验证后设置表单身份验证票据\cookie,则 cookie 将附加到来自浏览器的每个后续请求,而无需您编写任何代码。然后可以使用标准 ASP.Net 身份验证管道在服务器上对所有未来的 WCF 服务调用进行身份验证。

于 2012-04-13T09:09:53.637 回答