cas*_*als 6 .net iis wcf logging nlog
我有以下场景:
作为Windows托管服务运行的已部署WCF服务.此WCF服务用于将特定事件记录到数据库(NLog v2).此服务使用basicHttpBinding.
IIS下部署的Web应用程序(不同的服务器).应用程序池在NETWORK SERVICE凭据下运行.Web应用程序身份验证是Windows集成的(Active Directory凭据).
每当我从控制台应用程序调用WCF时,我都可以从中获取用户身份System.Threading.Thread.CurrentPrincipal.Identity.Name
; 当我从Web应用程序调用它时,我希望得到"DOMAIN\SERVER$"
线程标识名称(按预期发生).
我的问题是:我想让调用Web应用程序的用户.我已经尝试设置AspNetCompatibilityRequirements
在WCF服务合同的属性,但是 ${asp-application}
,${aspnet-user-identity}
并${asp-request}
在NLOG参数读作null
.在HttpContext
Web应用程序中是正常的,但它没有被发送到WCF.课堂上有一个Credentials
属性NLog.Logger
,但它是只读的.
有谁知道如何解决它?
可能,您需要设置impersonateCallerForAllOperations属性
有关详细信息,请参阅 MSDN:http://msdn.microsoft.com/en-us/library/ms731306.aspx
归档时间: |
|
查看次数: |
1235 次 |
最近记录: |