【问题标题】:Custom Authentication with WCF and NHibernate使用 WCF 和 NHibernate 进行自定义身份验证
【发布时间】:2011-09-22 10:56:14
【问题描述】:

我将一个 NHibernate 会话附加到我的 WCF Web 服务中的操作上下文,它允许我在处理每个操作期间访问会话对象(服务实例上下文是每次调用)。

该服务使用 UserNamePasswordValidator 实现自定义身份验证,但不幸的是,在对请求进行身份验证之前,OperationContext.Current 始终为空(可能是设计使然)。

我的问题是,如果我无法通过 OperationContext.Current 获取会话,我应该如何在 Validate(string userName, string password) 方法上设置 NHibernate 会话?其他偷窥者是怎么做到的?

提前致谢。

【问题讨论】:

    标签: wcf nhibernate authentication


    【解决方案1】:

    在验证器中使用单独的会话 = 通过会话工厂创建新会话。安全处理和操作处理之间没有设计共享存储。它们甚至应该在不同的线程中运行。您应该遵循这种设计,不要在安全处理和操作处理之间共享会话和加载的对象。

    【讨论】:

      猜你喜欢
      • 2011-04-12
      • 2011-03-18
      • 1970-01-01
      • 2012-10-24
      • 1970-01-01
      • 2016-07-09
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多