【问题标题】:Asp.Net Web Application authentication using WCF Service使用 WCF 服务的 Asp.Net Web 应用程序身份验证
【发布时间】:2012-07-27 10:51:15
【问题描述】:

我有一个 WCF 服务,它负责对用户进行身份验证。与 WCF 身份验证服务不同,我希望所有身份验证(包括来自 asp.net Web 应用程序的身份验证)都发生在 WCF 服务层。

现在,我的查询,我是否应该在 Web 应用程序层为身份验证定义成员资格提供程序。例如,我定义了一个自定义 WCF 成员资格提供程序,它调用 WCF 服务来执行身份验证。 或者如果应用程序使用表单身份验证来针对活动目录对用户进行身份验证,我将在 Web 层使用活动目录成员资格提供程序。

按照我的逻辑,由于我希望 WCF 服务负责对来自不同应用程序的用户进行身份验证,因此我将在服务层定义成员资格提供程序。

但是,对于哪个层负责实现成员资格提供者存在不同意见。

感谢和问候 吉里哈

【问题讨论】:

    标签: asp.net wcf forms-authentication membership-provider


    【解决方案1】:

    您不能(也不应该)在 WCF 中为 asp.net 应用程序执行 Windows 身份验证。您也不应该让您的服务负责确定哪个身份验证使用 asp.net。

    简而言之,您应该在应用程序级别定义您的身份验证机制(尽管您可以在任何您想要的级别实现它)。

    顺便说一句,我建议您使用已经建立的联合协议(即 WIF)来处理多个应用程序之间的身份验证。

    【讨论】:

    • 如果我使用 WIF ,难道不是所有身份验证调用(包括 asp.net 的 Windows 身份验证)都被定向到联合提供者,然后联合提供者决定使用哪个身份提供者进行身份验证用户。所以,在没有 WIF 的情况下,在我的应用程序中,它不会是扮演联合提供者角色的服务吗?
    • 它将扮演那个角色,但为什么要发明你自己的协议呢?
    猜你喜欢
    • 2010-11-08
    • 2011-02-12
    • 2012-12-07
    • 2010-11-10
    • 1970-01-01
    • 1970-01-01
    • 2011-02-04
    • 1970-01-01
    • 2011-06-24
    相关资源
    最近更新 更多