2009-09-01 55 views
1

我正在使用IIS V5.1。集成Windows身份驗證此服務的安全設置需要「匿名」身份驗證,但未啓用承載此服務的IIS應用程序

我有以下的web配置:

<system.serviceModel> 
    <bindings> 
     <wsHttpBinding> 
     <binding name="wsHttpEndpointBinding"> 
      <security mode="Transport" /> 
     </binding> 
     </wsHttpBinding> 
    </bindings> 
    <services> 
     <service behaviorConfiguration="DXDirectory.Service1Behavior" 
     name="DXDirectory.DXDirectoryService"> 
     <endpoint address="" binding="wsHttpBinding" bindingConfiguration="wsHttpEndpointBinding" 
      name="wsHttpEndpoint" contract="DXDirectory.IDXDirectoryService" /> 
     <endpoint address="mex" binding="mexHttpsBinding" bindingConfiguration="" 
      name="MexHttpsBindingEndpoint" contract="IMetadataExchange" /> 
     </service> 
    </services> 
    <behaviors> 
     <serviceBehaviors> 
     <behavior name="DXDirectory.Service1Behavior"> 
      <serviceMetadata httpGetEnabled="false" httpsGetEnabled="true" /> 
      <serviceDebug includeExceptionDetailInFaults="false" /> 
     </behavior> 
     </serviceBehaviors> 
    </behaviors> 
    </system.serviceModel> 

當我選擇看SVC文件瀏覽器,它會顯示以下錯誤:

例外:
安全設置此服務需要「匿名」身份驗證,但未啓用承載此服務的IIS應用程序。

當我刪除Mex端點時,將刪除此錯誤。

但是當我嘗試添加在客戶端應用程序的服務引用它提供了以下錯誤:

在URL http://localhost/DXDirectory/DXDirectoryService.svc文檔未被識別爲已知的文檔類型。

從每個已知類型的錯誤消息可能會幫助您解決問題:從「http://localhost/DXDirectory/DXDirectoryService.svc

  • 報告是'的文檔格式不能識別(內容類型是文本/ html;字符集= UTF -8 ')。'。
  • 來自'DISCO Document'的報告是'有錯誤下載'https://hes-ashu.abc.com/DXDirectory/DXDirectoryService.svc?disco'。'。
    • 底層連接已關閉:發送時發生意外錯誤。
    • 驗證失敗,因爲遠程方關閉了傳輸流。
  • 來自'WSDL文檔'的報告是'文檔格式不被識別(內容類型是'text/html; charset = UTF-8')。'。
  • 來自'XML Schema'的報告是'文檔格式不被識別(內容類型是'text/html; charset = UTF-8')。'。 元數據包含無法解析的引用:'http://localhost/DXDirectory/DXDirectoryService.svc'。

該HTTP請求未經授權,客戶端身份驗證方案爲「匿名」。從服務器收到的驗證頭是'Negotiate,NTLM'。

遠程服務器返回錯誤:(401)未經授權。

如果服務在當前解決方案中定義,請嘗試構建解決方案並再次添加服務引用。

回答

1

當您指定傳輸安全模式時WCF需要https。嘗試解決這個問題,看看你得到什麼錯誤。

另請檢查您的system.web標記。

您正在取回「text/html」的響應可能是一個錯誤頁面,所以如果您有可能使其變得瘋狂,您將得到一個更好的錯誤消息。

+0

感謝您的回覆Shiraj .. 你可以請給我一些關於如何修復https的指示。 如何啓用SSL? – 2009-09-01 09:48:00

+0

對於測試,嘗試將安全模式設置爲「無」 – 2009-09-01 10:26:53

相關問題