【问题标题】:Accessing .NET Web Service securely from Flex 3从 Flex 3 安全地访问 .NET Web 服务
【发布时间】:2010-09-08 18:22:07
【问题描述】:

我们可以从 Flex/AS3 应用程序成功使用 .NET 2.0 Web 服务。除了 SSL,我们还能如何使安全性更强大(即身份验证)?

【问题讨论】:

    标签: apache-flex actionscript-3 web-services actionscript


    【解决方案1】:

    如果您使用 Microsoft 技术,您可以构建一个小的 Asp.Net/C# 应用程序,该应用程序会在重定向到正确的 swf 之前要求提供凭据。

    这样您可以限制访问并根据用户拥有不同的 swf 文件。

    【讨论】:

      【解决方案2】:

      您应该能够使用 asp.net 的身份验证(例如表单身份验证)而无需付出太多额外的努力。保护 asmx 文件就像保护 aspx 文件一样。那里有大量关于表单身份验证的信息,只需搜索“asp.net forms authentication”

      【讨论】:

      • 这不太对。由于 flex/flash swf 文件是在客户端计算机上下载的,因此很容易对它们进行反编译...
      • @Frank - 如果您在操作脚本中保存用户名/密码,那么您需要克服的问题比担心有人反编译您的 swf 还要大。
      • 有一些方法可以在授予对 swf 的访问权限之前验证用户凭据
      【解决方案3】:

      您可以通过使用

      装饰您的网络方法来利用 ASP.Net 的内置会话管理

      <EnableSession()>

      然后,在你的方法中,你可以检查用户是否仍然有一个有效的会话。

      【讨论】:

        【解决方案4】:

        考虑使用 WebOrb 与您的服务进行通信。以下是有关WebOrb's authentication mecahnism 的一些信息。还有一个article on Adobe's developer site on using WebOrb and .Net for authentication

        【讨论】:

          【解决方案5】:

          如果您正在谈论保护信息通过网络传输,您可以使用 Web 服务扩展 (WSE) 来加密 soap 消息的正文,这样您就不必保护这个频道。这样,消息可以从多个端点传递(即可以转发),并且您不需要多个 https 证书。

          如果你说的是autentication,那么你可以在正文或soap标头中使用密码进行表单身份验证(再次加密正文或通道)。或者,保护 web 服务(如果它是一组内部服务)的最简单方法之一是让 IIS 执行此操作,打开 NTLM 并在那里进行身份验证。您可以稍后在管道中使用 HTTPModule 进行授权,该模块会根据人们尝试调用的代码检查人们的凭据。

          【讨论】:

            猜你喜欢
            • 2013-06-11
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2013-11-04
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2012-12-07
            相关资源
            最近更新 更多