我有一个承载多个WCF服务的应用程序。我创建了一个完美的自定义ServiceAuthorizationManager。我检查OperationContext.IncomingMessageHeaders上的一些元素以获取用户名和密码。这是为了克服我们环境中的某些限制,这些限制不允许我们使用平台内置的内容。管理器创建一个自定义IPrincpal,其中包含一些必要的自定义对象,并将其放在当前运行的线程上,以便稍后在WCF业务逻辑中使用。这很有效。
问题是我有一个工作流的WCF服务,我需要在那里使用相同的机制。管理器被正确调用,但是当执行Thread的currentPrincpal不是我的自定义主体时,它是一个通用原则。调查显示工作流运行时正在创建一个线程,而不是使用WCF调用所带来的线程。
有没有人遇到过这个问题,有什么好的解决方案吗?
答案 0 :(得分:0)