asp.net、wcf 身份验证和缓存

标签 asp.net wcf session caching authentication

我需要将我的应用程序业务逻辑放入 WCF 服务中。该服务不应该依赖于 ASP.NET,并且存在大量有关经过身份验证的用户的数据,这些数据在业务逻辑中经常使用,因此应该对其进行缓存(可能使用分布式缓存)。至于身份验证 - 我将使用两级身份验证:

  1. 前端 - 表单例份验证后端
  2. (WCF 服务)- 消息用户名身份验证。

对于这两种身份验证,应该使用相同的自定义成员资格提供程序。 为了缓存经过身份验证的用户数据,我将实现两个服务方法:

1) 身份验证 - 将检索所需的数据并将其放入缓存中(其中用户名将用作 key )
2) SignOut - 将从缓存中删除数据

问题 1. 以这种方式(在两个地方)执行身份验证是否正确?

问题 2. 这种缓存策略是否值得使用,或者我应该考虑使用 aspnet 兼容服务和 asp.net session ?

也许,这些问题太笼统了。但是,无论如何我想得到任何建议或推荐。

任何想法

最佳答案

问题 1:

根据我的经验,ASP 表单例份验证就足够了。没有理由以 POST 方式发送凭证,当然也不能以 GET 方式发送凭证。您可以使用它来更改密码或帐户信息方法。您可能想研究一下成员资格和角色。

问题2:

我会坚持使用 ASP.NET session 。这最终可能会使您的应用程序更容易出现问题和漏洞,我认为这是不必要的。

关于asp.net、wcf 身份验证和缓存,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9708475/

相关文章:

c# - 是否可以从代码隐藏中触发 AJAX CollapsiblePanelExtender 动画?

c# - 在页面中显示产品详细信息

c# - 如何以相对 url 格式获取 Sharepoint 图像

wcf - 为什么这段代码会导致内存泄漏?

asp.net - 删除目录会导致应用程序重新启动

c# - HTTPContext 在 ASP.NET 和 iis express 中找不到客户端 CAC 证书

c# - 可以从 SOAP UI 使用服务,但是调用该服务的 SQL Clr 不起作用

jquery - 是否将用户定义的类定义为 DataContract

hibernate - hibernate session 范围错误

node.js - Node 快速 session 不工作。为下一个请求获取未定义的 req.session.user