在我的WCF服务类,我在设置当前主要是在消息的头通过主体的构造函数:WCF服务 - 自定义用户
Thread.CurrentPrincipal = OperationContext.Current.IncomingMessageHeaders.GetHeader<BBPrincipal>("bbPrincipal", "ns");
这似乎是工作正常,但是当我在一个方法中引用主体时,Thread.CurrentPrincipal已经恢复为WindowsPrincipal。
推测该方法是在不同的线程上触发。我如何确保该方法在服务的构造函数中使用主体集?
你需要解释什么是你想达到的目标。你想在另一个帐户/模拟下运行你的服务吗?当然,处理传入请求的线程将与创建服务的线程不同。 – Aliostad 2010-09-20 09:17:52
你在哪里执行这段代码:“将当前主体设置为在消息头部传递的主体的主体” - 我非常感兴趣,因为我有类似的问题。 – 2014-08-12 03:23:42