好了,所以情況是這樣的:Web應用程序,WCF服務和Sharepoint Web服務
我有多個Web應用程序,它消耗的WCF服務。現在我想提出一個改變WCF服務消費的SharePoint 2010的Web Service即UserprofileService.asmx
Web應用程序 - > WCF服務 - >的Sharepoint的WebService
而問題是,如果我使用下面的代碼在wcf服務中,它可以與Sharepoint服務一起正常工作,並且當我從我的機器測試wcf服務時,我可以訪問sharepoint userprofile服務中可用的方法。
C#
service.ClientCredentials.Windows.AllowedImpersonationLevel = System.Security.Principal.TokenImpersonationLevel.Impersonation;
service.ChannelFactory.Credentials.Windows.ClientCredential = System.Net.CredentialCache.DefaultNetworkCredentials;
的Web.config
<security mode="TransportCredentialOnly">
<transport clientCredentialType="Ntlm" proxyCredentialType="None"
realm="" />
<message clientCredentialType="UserName" algorithmSuite="Default" />
</security>
但我不再能夠從我的web應用程序調用WCF服務作爲Web應用程序使用下面的。
<security mode="Message">
<transport clientCredentialType="Windows" proxyCredentialType="None" realm="">
<extendedProtectionPolicy policyEnforcement="Never"/>
</transport>
<message clientCredentialType="Windows" negotiateServiceCredential="true" algorithmSuite="Default" establishSecurityContext="true"/>
</security>
我需要一種方法以這樣的方式來配置WCF服務,它仍然能夠與所有現有的應用程序交談,並能開口說話到SharePoint服務在同一時間。
最重要的是我想使用WCF服務在其下運行的服務帳戶(例如:b2 \ deltaUser)訪問共享點userprofile服務中不同用戶的配置文件。我需要使用模擬嗎?如果是的話,我如何在這裏使用它。
這聽起來像它可能是一個「雙跳」問題的情況。 – 2012-07-23 21:14:14