Agile ALM
Free SaaS for open source projects on Amazon EC2 cloud
This server hosts 24000 users !
         
View all tags
Tags:  No tags associated yet.
OpenNI 提供了一个可被模块和应用程序使用的授权方式。OpenNI里有一个上下文对象(context object) 一个OpenNI的上下文对象,这是一个对象,持有使用OpenNI的应用程序的完整状态和当前加载了的许可证的名单列表。这个列表可以在任何阶段进行访问,以搜寻特定的许可证。 一个许可证包含了供应商名称和许可证密钥。厂商谁想要利用这一机制的话可以利用自己的专有格式的密钥。

模块使用这一授权机制来保证,它们(模块本身)只能够被那些已经被授权了的应用程序使用。一个由特定厂商生产的模块可以被安装在一个特定的计算机(machine)上,而且只能够被那些已经得到本模块授权的应用程序使用。 在枚举过程中,当OpenNI搜索有效的生产链时,模块可以检查许可证的列表。如果请求的许可没有被注册,该模块能够隐藏自身,这意味着它会返回零结果,因此而不能被划归到一个可能的生产链中并使用(?)。

OpenNI还提供了一个许可证密钥,这是上下文对象初始化加载的一个全局注册表。大多数模块在安装的时候需要从用户那里得到许可证密钥。使用niLicense命令行工具可以将用户提供的许可证可以添加到全局许可证注册表里,它也可以用来清除许可证。

此外,应用程序有时有一个模块的私有牌照,这意味着这个模块只能被自己激活使用(防止其他应用程序使用它)。