java - 线程安全策略

标签 java security multithreading

假设我正在编写一些执行客户端代码 (Java) 的环境。客户端发送带有 list 信息的 jar。 Environment 从 jar 创建一些类实例(假设是 Runnable 的实例)并在某个线程中运行它。但我需要保证客户端代码不会启动自己的线程或创建自己的 ExecutorService 等等。

安全经理是否有可能进行这种级别的限制?如果可以,我该如何实现?

最佳答案

我能想到的最好方法是使用 AspectJ 进行一些运行时编织,如果创建了任何其他线程/可运行对象,则要么抛出错误,要么以某种方式通知用户他们遇到了问题。

然后您可以实现各种安全协议(protocol),例如,您不仅可以阻止线程,还可以阻止任何系统调用,例如,就像您可以禁止动态查询而只允许准备好的语句一样。

否则,您可能需要使用反射器 API 执行此类实现。

关于java - 线程安全策略,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1892238/

相关文章:

java - Guava EventBus Google App Engine 友好吗?

c# - Go 例程与任务并行库的实现

java - 如何Junit测试一个同步对象不能同时被两个线程访问?

java - BIRT 获取报告中所需参数的列表

java - [Android][RecyclerView] 方法不会覆盖或实现父类(super class)型的方法

php - 如何加密现有的MySQL数据库?

ios - 使用 iOS Security.framework 生成自签名证书?

java - 即使在 timeToLiveSeconds 和/或 timeToIdleSeconds 之后,Ehcache 也不会从缓存中删除元素

java - 有没有办法可以制作一个 try-try-catch block ?

PHP的password_hash() : public one-time salt vs.私有(private)固定盐