java.lang.Object java.security.Permission java.security.BasicPermission java.net.NetPermission
public final class NetPermission
此类可用于各种网络权限。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 | 获取提供本地响应缓存的访问权限的响应缓存的能力。 | 获取本地响应缓存的访问权限的恶意代码可以访问安全性敏感信息。 |
构造方法摘要 | |
---|---|
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 |
构造方法详细信息 |
---|
public NetPermission(String name)
name
- NetPermission 的名称。
NullPointerException
- 如果
name
为
null
。
IllegalArgumentException
- 如果
name
为空。
public NetPermission(String name, String actions)
name
- NetPermission 的名称。
actions
- 应该为 null。
NullPointerException
- 如果
name
为
null
。
IllegalArgumentException
- 如果
name
为空。