java - doPrivileged 和 java applet 沙箱

标签 java applet sandbox

例如,如果我在小程序类中使用此代码,请在小程序沙箱中运行它

public void init() {
    try {
        class doInit implements PrivilegedExceptionAction {

            public Object run() throws Exception{
                File file = new File("/tmp/1.txt");
                FileOutputStream fos = null;

                fos = new FileOutputStream(file);
                fos.write("hello world2".getBytes());
                fos.close();
                return null;
            }
        }
        ;
        doInit di = new doInit();
        AccessController.doPrivileged(di);

我知道它会失败并抛出安全异常。 但为什么?

FileFileOutputStream 位于核心 java API 中,但我无法使用 doPrivileged 获取权限?

最佳答案

对于小程序,您作为小程序的开发者无权授予或撤销权限。 它们由执行小程序的计算机上的安全设置和策略决定。 小程序的一项要求是由有效且可信的证书进行签名。

关于java - doPrivileged 和 java applet 沙箱,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17104038/

相关文章:

java - Android 提示从 gridview 保存图像或设置壁纸

java小程序socket连接问题

java - 不支持的 major.minor 版本 52.0

objective-c - 沙箱和保存文件

cocoa - 沙盒应用程序中 NSSavePanel 和 NSOpenPanel 上的附件 View 出现奇怪行为

java - Spring Data MongoDB - 使用自定义 Id 字段时,注释 @CreatedDate 不起作用

java - 将填充的数组传递给公共(public)变量,以便它可以在其他类中使用

java - 使用 java 1.7.0.40 时,Applet 无法在 Chrome 或 FF 中运行

c# - 沙箱 AppDomain 跨程序集异常处理

java - 从java中的响应复杂json中提取所有值