java.net.SocketPermission中的Applet(java.net.SocketP

2019-09-22 04:35发布

我正在开发,需要保存在服务器上的一个文本文件的小程序。 这个问题摔跤过了一会儿,我无意中发现Lynlin.class可以利用FTP连接发送文件在互联网上。 工作正常提供我添加到C:\ Program Files文件\的Java \ jre7 \ lib \ security中\ java.policy文件一下面一行:

permission java.net.SocketPermission "192.168.33.15:*", "connect, accept ,resolve, listen";

如果我尝试从电脑这个小程序,没有java.policy文件编辑我得到以下错误:

java.security.AccessControlException: access denied 
    ("java.net.SocketPermission" "192.168.33.15:21" "connect,resolve")*

有谁知道我怎么能摆脱不是编辑在每个将使用该applet的每台计算机java.policy文件和其他这个问题的?

只是为了claryfy:

  • 我的小程序目前没有签名,但它试图发送一个文件服务器在该小程序位于同一

  • HTTP和FTP服务器是Windows Server 2003上运行微软IIS(IP 192.168.33.15)

Answer 1:

至于EJP提到,地址传送的小应用程序和服务器的地址,似乎是运行applet的JRE不同。

有必要通过服务器(一个访问HTML http://..地址)。



Answer 2:

确切的URL是“\ pwaidc9 ...

这不是一个URL。 它是一个Windows UNC文件名。 从文件系统,而不是TCP主机下载的小程序可言,所以你不能用一个插座连接到它。

签名Applet。



Answer 3:

有没有办法让一个applet做没有明确的权限的网络连接,以便在客户机环境中这样的活动。 这是因此对于客户机的安全性。 默认情况下,所有的applet在沙盒限制的环境中运行。



文章来源: java.net.SocketPermission in Applet