对未签名的Java小程序可以做什么的限制?

时间:2009-09-27 13:37:02

标签: java security applet jvm

我正在尝试编译对未签名Java小程序的所有限制的完整列表(定义为普通Java应用程序可以执行的操作,但未签名的Java小程序不能)。

这是我到目前为止编制的列表:

未签名的Java小程序......

  1. 无法访问本地文件系统。
    • 无法访问系统剪贴板。
    • 无法启动打印作业。
    • 无法连接或从任何第三方服务器(applet源自的服务器以外的任何服务器)检索资源。
    • 无法使用多播套接字。
    • 无法创建或注册SocketImplFactoryURLStreamHandlerFactoryContentHandlerFactory
    • 无法侦听传入的套接字连接。
    • 无法收听数据报。
    • 无法访问某些系统属性(java.class.path,java.home,user.dir,user.home,user.name)。
    • 无法创建或注册SecurityManager对象。
    • 无法使用load()loadLibrary()的{​​{1}}或Runtime方法动态加载本机代码库。
    • 无法通过调用任何System方法生成新进程。
    • 无法在运行不受信任代码的线程组之外创建或访问线程或线程组。
    • 无法在Runtime.exec()java.*sun.*中定义类。
    • 无法显式加载netscape.*包中的类。
    • 无法通过调用sun.*System.exit()
    • 退出Java运行时
    • 无法访问系统事件队列。
    • 无法使用Runtime.exit()反射方法获取有关类的非公共成员的信息,除非该类是从与不受信任的代码相同的主机加载的。
    • 无法以任何方式操纵安全身份(java.security)。
    • 无法设置或读取安全属性(java.security)。
    • 无法列出,查找,插入或删除安全提供程序(java.security)。
  2. 问题:是否有任何限制?如果是这样,请清楚说明您认为列表中缺少的限制。

2 个答案:

答案 0 :(得分:3)

请参阅Sun的教程:What Applets Can and Cannot Do

答案 1 :(得分:1)

此外,您无法注册UncaughtExceptionHandler