JavaTM Platform
Standard Ed. 6

java.net
类 NetPermission

java.lang.Object
  继承者 java.security.Permission
      继承者 java.security.BasicPermission
          继承者 java.net.NetPermission
所有已实现的接口:
Serializable, Guard

public final class NetPermission
     
extends BasicPermission

此类可用于各种网络权限。NetPermission 包含一个名称(也称为“目标名称”),但没有动作列表;可能有指定的权限,也可能没有。

目标名称是网络权限的名称(参见以下内容)。命名约定遵守层次结构属性命名约定。另外,名称的末尾可能有一个星号,星号前有一个 ".",用来表示通配符。例如:"foo.*" 或 "*" 是有效的,而 "*foo" 或 "a*b" 则无效。

下表列出了所有可能的 NetPermission 目标名称,并提供了权限所允许的操作的简要说明,还讨论了授予代码该权限的风险。

权限目标名称 权限所允许的操作 允许此权限所带来的风险
setDefaultAuthenticator 设置代理或 HTTP 服务器请求验证时获取验证信息的方式的能力 恶意代码可以设置一个 authenticator,在获取用户输入时能监控和盗取用户的验证输入。
requestPasswordAuthentication 要求在系统中注册的 authenticator 提供密码的能力 恶意代码可能盗取此密码。
specifyStreamHandler 在构造 URL 时指定流处理程序的能力 恶意代码可能利用它通常不可访问的资源(如 file:/foo/fum/)创建 URL,指定从它可以访问的某个位置获取实际代码的流处理程序。因此,它也许能欺骗系统,使其创建类事件的 ProtectionDomain/CodeSource,尽管该类实际上并非源于该位置。
setProxySelector 设置用于决定要在建立网络连接时使用的代理的代理选择器的能力。 恶意代码可以设置一个 ProxySelector,将网络流量定向到任意网络主机。
getProxySelector 获取用于决定要在建立网络连接时使用的代理的代理选择器的能力。 恶意代码可以获取 ProxySelector 以发现内部网络中的代理主机和端口,从而其可能成为攻击的目标。
setCookieHandler 设置用于为 Http 会话处理高度安全性敏感 cookie 的 cookie 处理程序的能力。 恶意代码可以设置 cookie 处理程序以达到对高度安全性敏感 cookie 信息的访问。有些 Web 服务器使用 cookie 来保存用户私有信息(如访问控制信息)或者跟踪用户浏览习惯。
getCookieHandler 获取用于为 Http 会话处理高度安全性敏感 cookie 的 cookie 处理程序的能力。 恶意代码可以获得 cookie 处理程序以达到对高度安全性敏感 cookie 信息的访问。有些 Web 服务器使用 cookie 来保存用户私有信息(如访问控制信息)或者跟踪用户浏览习惯。
setResponseCache 设置提供本地响应缓存的访问权限的响应缓存的能力。 获取本地响应缓存的访问权限的恶意代码可以访问安全性敏感信息,也可以在响应缓存中创建 false 条目。
getResponseCache 获取提供本地响应缓存的访问权限的响应缓存的能力。 获取本地响应缓存的访问权限的恶意代码可以访问安全性敏感信息。

另请参见:
BasicPermission, Permission, Permissions, PermissionCollection, SecurityManager, 序列化表格

构造方法摘要
NetPermission(String name)
          创建具有指定名称的新 NetPermission。
NetPermission(String name, String actions)
          创建带指定名称的新 NetPermission。
 
方法摘要
 
从类 java.security.BasicPermission 继承的方法
equals, getActions, hashCode, implies, newPermissionCollection
 
从类 java.security.Permission 继承的方法
checkGuard, getName, toString
 
从类 java.lang.Object 继承的方法
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

构造方法详细信息

NetPermission

public NetPermission(String name)
创建具有指定名称的新 NetPermission。此名称是 NetPermission 的符号名,比如“setDefaultAuthenticator”等等。名称的末尾可能出现一个星号来表示通配符,其前面有一个“.”(也可能没有)。

参数:
name - NetPermission 的名称。
抛出:
NullPointerException - 如果 namenull
IllegalArgumentException - 如果 name 为空。

NetPermission

public NetPermission(String name,
                     String actions)
创建带指定名称的新 NetPermission。此名称是 NetPermission 的符号名,而当前不使用动作 String,该字符串应该为 null。

参数:
name - NetPermission 的名称。
actions - 应该为 null。
抛出:
NullPointerException - 如果 namenull
IllegalArgumentException - 如果 name 为空。

JavaTM Platform
Standard Ed. 6

提交错误或意见
有关更多的 API 参考资料和开发人员文档,请参阅 Java SE 开发人员文档。该文档包含更详细的、面向开发人员的描述,以及总体概述、术语定义、使用技巧和工作代码示例。

版权所有 2007 Sun Microsystems, Inc. 保留所有权利。 请遵守许可证条款。另请参阅文档重新分发政策