【问题标题】:ASP.NET Membership Provider and Web ServicesASP.NET 成员资格提供程序和 Web 服务
【发布时间】:2013-01-21 18:38:53
【问题描述】:

我正在开发一个使用 ASP.NET Membership Provieder 为每个用户实现身份验证和角色的网络应用程序。

现在我需要创建一个 Web 服务来提供一些异步功能,并且我需要从我的应用程序中的多个页面调用 Web 方法。但我注意到,在浏览器地址栏中设置 url 的未经身份验证的用户也可以访问 Web Service。

有没有办法将成员资格提供者规则也应用于网络方法,或者我必须为每种方法实施身份验证系统?

【问题讨论】:

    标签: c# asp.net web-services authentication membership-provider


    【解决方案1】:

    您可能不应该向公众公开 Web 服务。它应该驻留在您的内部网络中。如果您需要将其公开给公众,那么您需要以与您的 Web 应用程序相同的方式保护它。您还可以在 Web 服务方法中使用表单身份验证。根据您用于实现服务的技术,可能有多种方法可以实现这一目标。基本上,您的所有 Web 方法调用都需要一个有效的表单身份验证 cookie 与每个请求一起发送,以便对用户进行身份验证。

    【讨论】:

    • 对于我的应用程序,我使用的是经典的表单身份验证,但是如果我指向我的 Web 服务的 url,我可以在没有身份验证的情况下访问这些方法...有没有办法隐藏这个部分网站的?我不需要向公众公开这些方法,因为它们仅在 web-app 中使用
    • 是的,您可以将这些方法托管在一个单独的 ASP.NET 应用程序中,该应用程序部署在您的基础架构的内部网络上,该网络无法公开访问。
    猜你喜欢
    • 1970-01-01
    • 2011-03-19
    • 1970-01-01
    • 1970-01-01
    • 2010-11-15
    • 1970-01-01
    • 2011-01-29
    • 1970-01-01
    • 2010-11-20
    相关资源
    最近更新 更多