Flash Actionscript NTLM身份验证示例?

时间:2009-07-10 18:07:12

标签: flash authentication actionscript ntlm

有没有人有一个从动作脚本3.0调用web服务并使用NTLM身份验证的示例。 adobe liveocs列出了支持的NTLM身份验证,但我无法确定将用户凭据传递到何处。

谢谢, 彼得

2 个答案:

答案 0 :(得分:1)

我很确定除了使用Adobe AIR之外,这是不可能的。 LiveDocs中的身份验证信息仅适用于AIR(方法名称旁边的小符号表示此情况)。

通过一些关于NTLM over HTTP的快速阅读,看起来它需要您根据从服务器返回的HTTP状态代码执行多个请求。这本身可能会有问题,因为Flash最好提供这些代码。

此外,NTLM是一种基于连接的方案,要求您在第二个和第三个请求之间保持连接。 Flash无法发送keep-alive标头,也无法创建持久连接。我倾向于认为这消除了Flash使用AS3本地进行NTLM身份验证的可能性。

但是,我 NOT 是NTLM的专家,我引用的文档似乎不是NTLM over HTTP规范的正式版本。我不会说通过Flash验证NTLM是不可能的 - 它看起来就好像它将是非常非常困难的。

答案 1 :(得分:0)

可以在ActionScript中使用。通过向浏览器询问NTLM凭据,服务器将对您提出的每个请求提出质疑。然后,Internet Explorer会附加相应的授权标头。接下来,服务器将验证凭据并提供内容或拒绝访问。

由于所有这些都是在没有Flash Player沙箱意识到的情况下完成的,因此我们(沙箱中的开发人员)无法控制。因此,在发出初始请求之前,我们不能使用ActionScript预先附加NTLM授权标头,这将绕过“挑战”阶段。 Silverlight也是如此。

相关问题