我正在尝试编译对未签名的 Java applet 施加的所有限制的完整列表(定义为普通 Java 应用程序可以做的事情,但未签名的 Java applet 不能做的事情)。
这是我到目前为止编制的列表:
一个未签名的 Java applet ...
- 无法访问本地文件系统。
- 无法访问系统剪贴板。
- 无法启动打印作业。
- 无法连接到任何第三方服务器(除小程序源自的服务器之外的任何服务器)或从中检索资源。
- 不能使用多播套接字。
- 无法创建或注册
SocketImplFactory
、URLStreamHandlerFactory
或ContentHandlerFactory
。 - 无法监听传入的套接字连接。
- 无法监听数据报。
- 无法访问某些系统属性(java.class.path、java.home、user.dir、user.home、user.name)。
- 无法创建或注册
SecurityManager
对象。 - 无法使用
Runtime
或System
的load()
或loadLibrary()
方法动态加载 native 代码库>. - 无法通过调用任何
Runtime.exec()
方法生成新进程。 - 无法在运行不受信任代码的线程组之外创建或访问线程或线程组。
- 不能在
java.*
、sun.*
和netscape.*
中定义类。 - 无法从
sun.*
包中显式加载类。 - 无法通过调用
System.exit()
或Runtime.exit()
退出 Java 运行时。 - 无法访问系统事件队列。
- 不能使用
java.lang.Class
反射方法获取有关类的非公共(public)成员的信息,除非该类是从与不受信任的代码相同的主机加载的。 - 不能以任何方式操纵安全身份 (java.security)。
- 无法设置或读取安全属性 (java.security)。
- 无法列出、查找、插入或删除安全提供程序 (java.security)。
问题:是否缺少任何限制?如果是,请清楚说明您认为列表中缺少哪些限制。
最佳答案
请参阅 Sun 的教程:What Applets Can and Cannot Do .
关于java - 对未签名的 Java 小程序可以做什么的限制?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1483595/