【问题标题】:WCF Service with Domain Validation具有域验证的 WCF 服务
【发布时间】:2013-06-24 06:30:18
【问题描述】:

我正在使用WPFWCF-RESTful 站点构建Messaging Application

此应用程序用于 Intranet 和 Internet。应用程序通过 Internet(域外)访问时会提示进行身份验证(消息应用程序中的自定义登录屏幕)。

我们在WCF service 中编写了身份验证逻辑,如下所示:

using (PrincipalContext pc = new PrincipalContext(ContextType.Domain, domain))
{
    if (!pc.ValidateCredentials(userName, password, ContextOptions.Negotiate))
    {
        return string.Empty;
    }
}

网站的应用程序池设置为使用NetworkService。该网站的身份验证是“匿名的”,因为 Intranet 用户不需要进行身份验证。

我没有收到任何错误或异常。相反,即使凭据正确,它也总是为任何用户名返回“false”。

你能告诉我这里缺少什么吗?

【问题讨论】:

    标签: wpf wcf dns windows-authentication wcf-security


    【解决方案1】:

    看看这里http://travisspencer.com/blog/2009/07/creating-users-that-work-with.html 加上如果用户名的格式是 domain\userName 尝试从域名解析它并仅将用户部分作为参数发送给 ValidateCredentials

    【讨论】:

    • 谢谢。我使用与域无关的不同解决方案解决了它。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2010-11-05
    • 2015-05-24
    • 1970-01-01
    • 1970-01-01
    • 2018-03-28
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多