我一直认为SecurityManagers包含了一个检查方法,该方法在尝试使用Method / Field.setAccessible()时调用,该方法包含一个Permission,其中包含封闭类和成员名称等的方法/字段的名称。显然它不是哪个很震惊。
我有一个想法,通过使用重写了诸如
之类的尝试的ClassLoader来解决这个问题是可能的。Method.setAccessible()
到
MethodHelper.setAccessible( Method );
MethodHelper方法可以设置我的安全管理器查看的本地线程并清除以获取实际的方法。
可以采用相同的方法来检索方法,字段等,这些方法,字段等现在可以使任何形式的SecurityManager成员可用。
是否有任何包含上述功能的FOSS库?