我有一些使用 swfobject 嵌入的 Flash swf,我将一些变量传递给它们,例如用户 ID。如何防止人们阅读这些变量?如果有人查看嵌入 swfs 的 php 页面的源代码,他们可以看到所有正在传递给 flash 的变量。有没有办法隐藏这些变量?还有什么其他方法可以做到这一点?我考虑过设置一个 ExternalInterface 并调用一个 javascript 函数将变量传递给 Flash - 这会有效地隐藏我发送的数据吗?
谢谢
我有一些使用 swfobject 嵌入的 Flash swf,我将一些变量传递给它们,例如用户 ID。如何防止人们阅读这些变量?如果有人查看嵌入 swfs 的 php 页面的源代码,他们可以看到所有正在传递给 flash 的变量。有没有办法隐藏这些变量?还有什么其他方法可以做到这一点?我考虑过设置一个 ExternalInterface 并调用一个 javascript 函数将变量传递给 Flash - 这会有效地隐藏我发送的数据吗?
谢谢
您实际上无法隐藏数据。你只能让它更难找到。使用 firebug 或类似工具,人们总会发现,因为他们可以查看您的 JS 所做的事情以及您的应用程序发送的数据。您可以做的最好的事情是添加一些加密,但使用反编译器,可以轻松地从 swf 中提取解密机制。
如果您描述了一般问题(正在发送什么样的数据以及为什么/反对您希望保护它的内容),也许我可以提供更具体的想法。
编辑:这对我来说似乎是一个严重的安全漏洞。受限制的服务应仅授予经过适当身份验证的用户的访问权限。flash 客户端不应该传递它的用户 ID。相反,会话(由登录创建)应该与用户相关联,从而允许识别。所以你的客户甚至永远不会知道它的用户 ID。它只会发送一个请求,PHP 会话将允许找出这个用户 ID 并提供相应的数据。