Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ssl/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Apache flex 使用Flex获取唯一的系统ID_Apache Flex - Fatal编程技术网

Apache flex 使用Flex获取唯一的系统ID

Apache flex 使用Flex获取唯一的系统ID,apache-flex,Apache Flex,是否有一种方法可以在浏览器中运行的Flex应用程序中获取唯一的特定于机器的系统ID,以便可以使用该ID来确定机器是否获得运行该应用程序的正确许可?基于用户机器或操作系统,我想不出任何方法来实现这一点。浏览器应用程序的全部目的是让它们能够通过浏览器随时随地运行。据我所知,Flash没有提供任何可以合理转换为唯一机器ID用于许可目的的信息,甚至连机器上网卡的MAC地址都没有 就个人而言,我认为你最好要求用户登录时输入用户名/密码,然后使用存储在cookie中的会话密钥允许用户跳过该步骤(例如,“在这

是否有一种方法可以在浏览器中运行的Flex应用程序中获取唯一的特定于机器的系统ID,以便可以使用该ID来确定机器是否获得运行该应用程序的正确许可?

基于用户机器或操作系统,我想不出任何方法来实现这一点。浏览器应用程序的全部目的是让它们能够通过浏览器随时随地运行。据我所知,Flash没有提供任何可以合理转换为唯一机器ID用于许可目的的信息,甚至连机器上网卡的MAC地址都没有


就个人而言,我认为你最好要求用户登录时输入用户名/密码,然后使用存储在cookie中的会话密钥允许用户跳过该步骤(例如,“在这台计算机上记住我”类型的功能,如GMail)。这样做的好处是,用户可以从他们喜欢的任何PC上运行应用程序。

您无法真正从flex应用程序访问特定于机器的信息,如MAC地址或其他ID。您可能应该使用其他一些技术,如使用ASP.NET或JSP。

在flex中创建UUID

import mx.utils.UIDUtil;

var myUUID:string = UIDUtil.createUID();
我想,如果你想变得非常聪明,你可以用一个本地已知的salt加密这个字符串,并生成一些无法共享的加密许可证密钥。您可以定期更改盐或密钥以强制执行许可证过期


您需要以某种方式管理后端上的关键数据。

ILog Elixir可以做到这一点,但他们是通过传统的安装过程来实现的。swc文件带有水印,但当您输入有效的序列号时,未标记的swc文件将被解锁,并且源代码可用


我没有任何关于他们实际上是如何做的细节,但这并不是直接通过flex实现的。也许研究传统的软件安装过程并以这种方式解锁加密数据将产生您想要的答案。

让我澄清为什么需要特定于机器的标识。也许有人知道即使没有任何类型的硬件信息访问,如何实现这一点。我已经为Flex开发了一个库,我想下载试用版。然后,用户可以使用包含的swc编译他们的应用程序,比如说14天。14天后,他们将去网站注册,以便下载swc的完整版本,该版本专门在现场编译,仅在下载到的机器上运行。这就是唯一id的来源。是的,在仔细观察之后,我得出了相同的结论。最好的做法是允许某人对自己进行身份验证,然后将该身份验证保存为Flash cookie。谢谢。虽然Flash Access 2.0 DRM旨在用于视频和音频内容,但它确实包含一个用于唯一标识客户端/计算机的API。此信息仅在许可证服务器(java SDK)中可用,而在ActionScript中不可用,并且需要在客户端的Flash运行时首次加载Flash访问代码时进行个性化处理。请参阅:我花了一段时间才找到,但在较新的Air版本中,此函数现在属于另一个类:RPCUIDUtil.createUID。软件包:mx.utils。我还必须在flex项目中引用/frameworks/libs/air/aircore.swc才能使用它。