当用户连接到我的web服务时,我将设置Thread.CurrentPrincipal
(messageinspector)与我的自定义上下文,然后这可以用于整个解决方案。我是否需要清除Thread.CurrentPrincipal?
问题是这个Thread.CurrentPrincipal
需要设置为null还是只在当前调用期间生活?
它似乎只能持续当前的呼叫,但我不知道这只是一个巧合吗?
BestRegards
当用户连接到我的web服务时,我将设置Thread.CurrentPrincipal
(messageinspector)与我的自定义上下文,然后这可以用于整个解决方案。我是否需要清除Thread.CurrentPrincipal?
问题是这个Thread.CurrentPrincipal
需要设置为null还是只在当前调用期间生活?
它似乎只能持续当前的呼叫,但我不知道这只是一个巧合吗?
BestRegards
此属性表示您当前的安全登录名,因此可能不应设置为空,除非您有特殊需要。在很多情况下,这是适当的(例如网上银行),但除此之外,您可能需要它来继续访问您需要访问的资源。
进一步阅读MSDN文章:http://msdn.microsoft.com/en-us/library/system.threading.thread.currentprincipal.aspx
没有它不是巧合,我发现同样的,当您的通话结束当前线程结束,你不再有身份。