java – JNLP获得许可

前端之家收集整理的这篇文章主要介绍了java – JNLP获得许可前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

我最近在通过JNLP启动我的应用程序时偶然发现了一个问题.我现在把它缩小到java.security.AccessControlException,它拒绝我关闭我的ExecuterService.

所以,我做了一些阅读,发现我需要权限(modifyThread)才能成功关闭服务.我还发现我应该使用< security> -tag(在JNLP文件中)来请求它,但我对如何使用感到困惑.

documentation of the tag说:

@H_@R_301_448@_10@

[…] If the all-permissions element is specified,the application
will have full access to the client machine and local network
. If an
application requests full access,then all JAR files must be
signed
. The user will be prompted […]

从阅读本文来看,在我看来,我可以选择获得全部或无权限……这似乎是一个令人困惑的实现.因为我只需要一个关闭我的服务.

我还阅读了this article,告诉我不应该请求所有权限,因为我会打开用户计算机以获取恶意代码.

那么,有没有办法指定我只需要特定的权限(modifyThread),因此我不需要签署我的jar?或者我是否必须使用“签署我的罐子并请求一切” – 接近?

最佳答案
@H_@R_301_448@_10@

..will I have to go with the “sign my jar and request everything”-approach?

是. JWS权限有3个级别1,唯一允许修改线程的权限是all-permissions.

1)JWS安全级别

>沙盒装.提供非常有限的环境.只允许使用JNLP API服务访问打印机和本地文件系统之类的东西,这些服务在提示用户后提供更多有限形式的文件.来自窗口横幅.只能与自己的服务器通信.
> j2ee-application-client-permissions – 提供那些无提示的JNLP API服务(在用户接受数字签名代码之后)删除窗口横幅.
>所有权限 – 几乎任何东西,包括替换现有的安全管理器(是的,甚至’所有权限’代码在JWS中获得安全管理器 – 它只是非常宽松).

同时追逐JNLP& amp; JWS页.我个人可以推荐那些摘要&链接.

猜你在找的Java相关文章