ameba icon indicating copy to clipboard operation
ameba copied to clipboard

插件安全管理

Open icode opened this issue 10 years ago • 0 comments

框架周边应分为

  1. 类库API,无权限,只是API接口调用
  2. 模块,需要配置应用权限,以告诉ameba所需权限,如未配置则在调用接口时抛出异常
  3. UI库

功能

  1. 框架应有查找安装模块的能力
  2. 检测模块所需要权限
  3. 控制接口调用权限
  4. 更新模块功能
  5. 用户可以禁用模块某种权限调用(在安装模块时 , 也可在权限管理中)
  6. 模块可以获取自身是否有某种权限
  7. 需要由自己的classloader 通过java.system.class.loader配置是一个方法,但是不好。通过application.conf 配置默认classloader?classloader对于安全很重要,需要应用配置,插件不能随意更改。default.conf配置?然后在代码默认反射获取安全模块的classloader,没有则使用默认?

//TODO头脑风暴 利用classloader/securityManager控制权限? js利用aop? 每一个插件是否应该用单独的classloader?

参考 http://www.ibm.com/developerworks/cn/java/j-lo-javasecurity/ http://www.ibm.com/developerworks/cn/opensource/os-cn-android-sec/

icode avatar Dec 05 '14 07:12 icode