Far*_*oon 2 authentication iis wcf
我需要为没有证书的 IIS 6.0(Windows Server 2003)上托管的WCF服务实现集成Windows身份验证.要求是在特定Active Directory组中的用户访问服务时简单地对其进行身份验证.使用的Framework版本是3.0.
WCF配置:
以下是服务的web.config文件的"绑定"部分:
<bindings>
<basicHttpBinding>
<binding name="Binding1">
<security mode="TransportCredentialOnly">
<transport clientCredentialType="Windows" />
</security>
</binding>
</basicHttpBinding>
</bindings>
Run Code Online (Sandbox Code Playgroud)
有没有 "MEX"端点.
即使虚拟目录以及.svc文件的安全设置在IIS中选择了"集成Windows身份验证",但.svc文件导航到以下时会发生以下错误:
此服务的安全设置需要Windows身份验证,但不支持承载此服务的IIS应用程序.
以下是托管服务的其他细节:
我在这些方面看到了许多其他问题,但没有一个修复实际上纠正了这个问题.非常感谢您的投入.
经过一番挖掘后,我终于发现,如果你将"Windows"改为"Ntlm",这就行了.我从来没有能够使用Kerberos,但你提到不想使用证书.
如果您仍然遇到问题,可以查看NTAuthenticationProviders下有关站点的IIS元数据库中的内容.如果你只想使用Ntlm,你需要将该字符串设置为"NTLM",并且你需要确保它在你的传输clientCredentialType中说"Ntlm"而不是"Windows",否则你将获得异常你引用原帖.
相反,如果有人遇到此错误并且他们想要使用Kerberos证书(如果可用),他们应该检查元数据库NTAuthenticationProviders是否说"Negotiate,NTLM".这是默认设置,但对于我今天尝试运行WCF服务的VM而言,这是神秘的不同(最终将我带到了这个线程!)
| 归档时间: |
|
| 查看次数: |
12743 次 |
| 最近记录: |