Flex 4.5 - 独特的计算机信息

发布于 2024-12-02 00:02:35 字数 198 浏览 4 评论 0 原文

我正在开发一个基于 Flex 4.5 Web 的应用程序,我需要确保客户端是否选择一定的安全级别,每个用户只能从授权的计算机登录。

那么问题是我怎样才能得到一些独特的计算机信息呢? HDD 序列号、CPU 规格、主板信息等任何信息,甚至登录操作系统的用户都可以执行此操作。

到目前为止,网络上的信息并没有给我带来太大的希望,但我不得不问。 提前致谢。

I am developing a flex 4.5 web based application and I need to make sure if the client chooses a certain level of security, each user can log only from an authorized computer.

So the question is how can I get some unique computer information? Anything like HDD serial number, CPU specifications, motherboard information, even the user that is logged into the Operating System can do.

So far the information on the web isn't giving me much hope that this can be achieved, but I had to ask.
Thanks in advance.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(5

栖竹 2024-12-09 00:02:35

我想 Web 应用程序可用的唯一选项是从 flash.system.Capability

可以使用的其他策略是生成唯一的UID 在计算机授权过程中,然后使用SharedObject。然后,Web 应用程序尝试在 Web 应用程序启动时从 SharedObject 读取授权数据。如果没有这样的数据,计算机就没有被授权。

I suppose the only option available for web application is to create unique id from fields of flash.system.Capabilities class.

Other strategy which can be used is to generate unique UID in process of computer's authorization and then store it in local storage using SharedObject. Then web app tries to read authorization data from SharedObject on web app start. If there is no such data computer isn't authorized.

梦里兽 2024-12-09 00:02:35

理查德是对的。为了安全起见,通过 Flash Player 运行的应用程序不提供唯一标识信息。如果用户(及其 IT 管理员)允许,您可以编写 Active X 控件(适用于 IE)或插件(适用于基于 Mozilla 的浏览器)来获取应用程序的附加信息。可用的信息将根据用户运行的浏览器和操作系统而有所不同。

另一方面,Adobe Air 允许访问其他网络信息,包括 NetworkInfo 类中的 MAC 地址。对于需要额外安全性的用户来说,也许值得考虑安装客户端应用程序。看一下:http://www.adobe.com/devnet/空气/flex/articles/retrieve_network_interfaces.html

Richard is right. For security, unique identifying information is not available for applications running through Flash Player. You could write an Active X control (for IE) or a plugin (for Mozilla based browsers) to obtain additional information for your app if users (and their IT administrators) allow it. Information available will vary depending on the browser and operating system the user is running.

Adobe Air, on the other hand, allows access to additional network information including MAC address in the NetworkInfo class. Maybe it's worth considering an installed client app for users who require the additional security. Take a look at: http://www.adobe.com/devnet/air/flex/articles/retrieving_network_interfaces.html

逆蝶 2024-12-09 00:02:35

使用基于浏览器的 Flex 应用程序这并不容易,但有一些解决方法。

基于浏览器的 Flash Player 可以使用本地连接与桌面上的 AIR 应用程序进行通信。因此,您可以创建一个 AIR 应用程序,利用 NativeProcess 检索您的计算机特定信息。

您还可以在 AIR 应用程序中使用 NativeProcess,而无需使用浏览器。

第三种选择是在客户端计算机上安装应用程序服务器,并使基于浏览器的应用程序与服务器通信以检索客户端信息。

我认为这些选项中的大多数都太难实用,但这取决于此功能对您来说有多重要。

This is not easy using a browser based Flex application, but there are some workarounds.

The browser based Flash Player can communicate with an AIR app on the desktop using localconnection. So, you could create an AIR app that utilizes NativeProcess to retrieve your machine specific information.

You could also use NativeProcess from a AIR app without using the browser at all.

A third option would be to install an application server on the client machine and have the browser based app communicate with the server to retrieve the client information.

I consider most of these options too difficult to be practical, but it depends on how important this feature is to you.

鸵鸟症 2024-12-09 00:02:35

Flash Player 安全沙箱不会让您读取有关运行 SWF 的系统的任何独特信息,因此恐怕这是不可能的。您将获得的最接近的可能是 Capability.serverString 以及可能的 IP 地址,但 serverString 属性仅列出客户端的所有功能,这显然不是一个独特的事情,并且对于同一台计算机也可能会不时发生变化。

The Flash Player security sandbox will not let you read anything unique about the system on which the SWF is running, so I'm afraid this is not possible. The closest you will get is likely Capabilities.serverString along with maybe IP address, but the serverString property just lists all the capabilities of the client, which is obviously not a unique thing, and also might change from time to time for the same computer.

故笙诉离歌 2024-12-09 00:02:35

警告:我对服务器端脚本的了解至少可以说是有限的。
这不是技术解决方案,而是解决问题的不同方法。

另一种解决方案是在服务器上检查原始数据包,以获得 IP 和 MAC 地址等数据。基于此,服务器可以拒绝或允许登录尝试。

我习惯于在微控制器上运行的嵌入式 Web 服务器上工作,其中基于 C 的黑魔法相当常见,所以我不确定这在更传统的环境中是否可能或实用。

Warning: my knowledge of server-side scripting is limited to say the least.
This isn't a technical solution, but rather a different approach to your problem.

An alternative solution to would be to inspect the raw packet at the server in order to obtain data such as the IP and MAC address. Based on this the server can then deny or allow the login attempt.

I am used to working on embedded web servers running on micro controllers where C-based black magic is rather common, so I am not sure if this is possible or practical in a more traditional environment.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文