我正在尝试将多个策略配置文件加载到每个租户的java安全管理器中。由于java secuirty tutorial指定可以将多个策略文件加载到策略对象,但我的要求是如何在多租户安全性的欠幅时间内指定必须将哪个策略文件加载到哪个用户扩展默认安全模型的模型。
答案 0 :(得分:0)
这听起来有点吓人。如果可能的话,我会为每个租户使用不同的VM。如果您不能这样做,您可能希望使用Policy.setPolicy。您将需要Policy的自定义实现,它基本上是多个策略的包装器。它可能需要查询一些ThreadLocal变量以查看哪个用户上下文适用于当前线程,然后委托给适当的包装Policy实现。要阅读策略文件,您可能需要直接引用Sun security provider。不要忘记默认情况下禁止反射,否则您的政策逻辑将无助于规避。
答案 1 :(得分:0)
尝试查看this blog post。 Jens Nordahl描述了如何沙箱不受信任的插件,这听起来像你需要的。
聚苯乙烯。很抱歉发布这篇文章,但这是Google上最高的帖子之一。