2
我有一个由几个OSGi包组成的应用程序。我希望强制他们中的一些只有在提供了有效的令牌(例如许可证密钥)时才提供其他捆绑服务访问他们的服务。有没有办法确保OSGi中的软件包的访问权限?
这也是为什么我会想限制访问到这些集合:
- 安全性:他们没有自己的访问策略,因为这些依靠什么应用程序正在使用的包。这意味着他们必须信任客户端软件包以验证他们代表的应用程序或用户的权限。我想保持对我信任的访问控制方案的控制。
- 可靠性:我允许并鼓励开发第三方模块来为我的系统添加功能。为了能够保证一些可靠性,我想控制这些扩展与我的系统进行交互的级别。另外,我想确保我自己的捆绑包仅用于已经过测试的组合。
- 许可证:某些模块中可能只有正确的许可证才能使用,或者我可能希望确保客户不能在不同的安装之间交换捆绑软件。
我看了一些关于ServicePermission
类和OSGi框架相关的,但在我看来,这些让网站管理员控制的访问策略,而不是捆绑制造商,这是我想要的。