2011-09-06 52 views
1

我需要通过一个小应用程序通过套接字写入远程机器。该applet位于封闭医院系统内的Intranet内,因此更改java安全文件不是问题。从Oracle站点,他们推荐以下策略更改:Java套接字权限问题

授予许可java.net.SocketPermission “10.130.71.156:8000”,“connect,accept”; };

我已经这样做了,但我仍然得到以下错误:

java.security.AccessControlException: access denied (java.net.SocketPermission [10.130.71.156:8000]resolve)  

的问题可能是什么任何想法?

+1

你意识到'puffin.eng.sun.com'只是一个演示/占位符地址,对吧? – Vlad

+0

是的。这不是我的许可文件中的内容。我有我尝试连接的服务器的实际DNS。 – Elliott

+0

尝试将主机名更改为通配符“*”,以确保它不会混淆DNS主机名解析。 – ataylor

回答

1

存在导致错误的配置问题。配置文件中的IP地址与策略文件中的IP地址不匹配。这就是为什么有安全错误。在评论中推荐使用通配符的人(阿泰勒)值得回答这个问题。通配符允许我们查看正在轮询的DNS。谢谢!

埃利奥特

2

现在的问题是配制的方式,抛出:SecurityException是因为政策抛出不允许“决心”。该策略应该很可能是

grant {permission java.net.SocketPermission“10.130.71.156:8000”,“connect,resolve”; };