1
我在Umbraco中創建了自定義WCF服務。該服務駐留在Service
文件夾中,似乎工作正常(我可以調用它並且適當地響應)。現在我希望用戶在撥打服務時進行身份驗證。在Umbraco中使用身份驗證的主機自定義WCF服務
要做到這一點,我已經添加了幾行代碼寫進web.config
:
<system.serviceModel>
<serviceHostingEnvironment multipleSiteBindingsEnabled="true" aspNetCompatibilityEnabled="true" />
<bindings>
<webHttpBinding>
<binding name="RaceManBinding">
<security mode="None" />
</binding>
</webHttpBinding>
</bindings>
<services>
<service name="RaceManagerAdmin.RaceManDataService" behaviorConfiguration="RaceManBehavior">
<endpoint address=""
binding="webHttpBinding"
contract="System.Data.Services.IRequestHandler" />
</service>
</services>
<behaviors>
<serviceBehaviors>
<behavior name="RaceManBehavior">
<serviceCredentials>
<userNameAuthentication userNamePasswordValidationMode="MembershipProvider"
membershipProviderName="UmbracoMembershipProvider" />
</serviceCredentials>
</behavior>
</serviceBehaviors>
</behaviors>
</system.serviceModel>
當我的服務被稱爲它應該使用一把umbraco成員提供給用戶進行身份驗證。
我的客戶創建一個網絡憑證的對象,這樣的specificies這樣:
var a = new RaceEntities(new Uri("http://localhost:40406/umbraco/Webservices/RaceManDataService.svc")) { Credentials = new NetworkCredential("admin", "secret") };
當我檢查HTTPContext.Current
我沒有看到任何身份驗證的用戶。
我在做什麼錯?
弗雷德裏克
嗨 我很抱歉,但似乎我錯過了service.mode-tag的一些部分。我現在已經包括了這一切。 – Frederik 2013-02-10 15:33:22