【问题标题】:How to secure Web services in ASMX file?如何保护 ASMX 文件中的 Web 服务?
【发布时间】:2013-05-04 10:35:49
【问题描述】:

我通过 Web 服务 .asmx 文件完成了一些关键的数据库连接,该文件可通过浏览器直接浏览访问并打开 如何防止某些方法并允许某些方法访问一般未经身份验证的用户?

这个问题对我的应用来说太严重了。

【问题讨论】:

    标签: c# web-services security asmx


    【解决方案1】:

    一种常见的方法是在所有 Web 服务调用中使用访问令牌。场景是这样的:

    1. 用户调用“登录”Web 服务方法,传递一些凭据。 (这应该通过安全连接,如果您还没有为所有这些连接,您可能需要 SSL。)
    2. “登录”Web 服务方法对用户进行身份验证,生成访问令牌(Guid 可以很好地工作),存储该访问令牌(可能带有令牌可用的时间窗口),并将该令牌返回给响应中的用户。
    3. 所有后续 Web 服务方法(所有需要保护的)都要求提供访问令牌作为方法参数。用户在所有调用中传递该访问令牌。
    4. 每次调用 Web 服务方法时,系统都会根据已知生成的令牌验证访问令牌(考虑一个时间窗口,如果您希望令牌过期,我建议这样做),如果它不是当前有效的令牌,拒绝请求。

    如果您曾经使用过 Facebook API,这是一个需要 request a time-sensitive access token 才能进行后续 API 调用的常见示例。

    【讨论】:

      猜你喜欢
      • 2012-04-17
      • 1970-01-01
      • 2011-06-16
      • 2015-06-16
      • 1970-01-01
      • 1970-01-01
      • 2011-01-09
      • 2010-09-12
      相关资源
      最近更新 更多