本文介绍了WCF IIS HTTPS基本身份验证.奇怪的问题的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

嗨!

我有一个非常奇怪的问题,如果我不能尽快解决它,我会秃顶:(

它非常简单,我要做的就是设置IIS以承载需要通过SSL进行基本身份验证的WCF服务

我有一个受信任的证书.
该网站在默认端口443上运行.
IIS网站也设置为仅允许基本身份验证.
如果我尝试访问应用程序中的任何.txt文件都可以正常工作.

Bur 当我尝试访问.svc文件时,我的登录无效.它不断提示我输入用户名和密码.

在网站日志文件中,我收到401.5 http错误?!?

有人知道如何解决这个问题吗?

致谢
Per Bornsjo

Regards
Per Bornsjo

下面的Web.config部分

Web.config sections below 

< system.serviceModel >
< 绑定 >
  <
basicHttpBinding >
    <
绑定 名称 = " SecurityByTransport " />
</
行为 >
  </
服务行为 >
</
行为 >
<
服务 >
  <
服务 behaviorConfiguration = " DefaultBehavior " 名称 = " MASServices.MASActivities " >
    <
端点 地址 = " 绑定 = " basicHttpBinding " bindingConfiguration = " SecurityByTransport " 名称 = " BasicEndpoint " 合约 = " MASServices.IMASActivities " />
  </
服务 >
</服务 >

<system.serviceModel>
<bindings>
  <
basicHttpBinding>
    <
binding name="SecurityByTransport">
      <
security mode="TransportCredentialOnly">
        <
transport clientCredentialType="Basic" proxyCredentialType="None" />
      </
security>
    </
binding>
  </
basicHttpBinding>
</
bindings>
<
behaviors>
  <
serviceBehaviors>
    <
behavior name="DefaultBehavior">
      <
serviceMetadata httpGetEnabled="false" httpsGetEnabled="true"/>
      <
serviceDebug includeExceptionDetailInFaults="true" />
      <
serviceThrottling maxConcurrentCalls="50" maxConcurrentSessions="50" />
      <
dataContractSerializer maxItemsInObjectGraph="655360" />
    </
behavior>
  </
serviceBehaviors>
</
behaviors>
<
services>
  <
service behaviorConfiguration="DefaultBehavior" name="MASServices.MASActivities">
    <
endpoint address="" binding="basicHttpBinding" bindingConfiguration="SecurityByTransport" name="BasicEndpoint" contract="MASServices.IMASActivities" />
  </
service>
</services>

 

推荐答案

<绑定 名称 = " SecurityByTransport " >
<
安全性 模式 = " 传输"
>
运输 clientCredentialType = " 基本" proxyCredentialType = " 没有"
/>
</
安全性
>
</
绑定
>

    <binding name="SecurityByTransport">
      <
security mode="Transport"
>
        <
transport clientCredentialType="Basic" proxyCredentialType="None"
/>
      </
security
>
    </
binding
>

帖子中的配置(TransportCredentialOnly)表示没有SSL要求.

谢谢

Vish

Vish


这篇关于WCF IIS HTTPS基本身份验证.奇怪的问题的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

08-11 08:38