java.applet

java.awt

java.awt.color

java.awt.datatransfer

java.awt.dnd

java.awt.event

java.awt.font

java.awt.geom

java.awt.im

java.awt.im.spi

java.awt.image

java.awt.image.renderable

java.awt.print

java.beans

java.beans.beancontext

java.io

java.lang

java.lang.annotation

java.lang.instrument

java.lang.management

java.lang.ref

java.lang.reflect

java.math

java.net

java.nio

java.nio.channels

java.nio.channels.spi

java.nio.charset

java.nio.charset.spi

java.rmi

java.rmi.activation

java.rmi.dgc

java.rmi.registry

java.rmi.server

java.security

java.security.acl

java.security.cert

java.security.interfaces

java.security.spec

java.sql

java.text

java.util

java.util.concurrent

java.util.concurrent.atomic

java.util.concurrent.locks

java.util.jar

java.util.logging

java.util.prefs

java.util.regex

java.util.zip

javax.accessibility

javax.activity

javax.crypto

javax.crypto.interfaces

javax.crypto.spec

javax.imageio

javax.imageio.event

javax.imageio.metadata

javax.imageio.plugins.bmp

javax.imageio.plugins.jpeg

javax.imageio.spi

javax.imageio.stream

javax.management

javax.management.loading

javax.management.modelmbean

javax.management.monitor

javax.management.openmbean

javax.management.relation

javax.management.remote

javax.management.remote.rmi

javax.management.timer

javax.naming

javax.naming.directory

javax.naming.event

javax.naming.ldap

javax.naming.spi

javax.net

javax.net.ssl

javax.print

javax.print.attribute

javax.print.attribute.standard

javax.print.event

javax.rmi

javax.rmi.CORBA

javax.rmi.ssl

javax.security.auth

javax.security.auth.callback

javax.security.auth.kerberos

javax.security.auth.login

javax.security.auth.spi

javax.security.auth.x500

javax.security.cert

javax.security.sasl

javax.sound.midi

javax.sound.midi.spi

javax.sound.sampled

javax.sound.sampled.spi

javax.sql

javax.sql.rowset

javax.sql.rowset.serial

javax.sql.rowset.spi

javax.swing

javax.swing.border

javax.swing.colorchooser

javax.swing.event

javax.swing.filechooser

javax.swing.plaf

javax.swing.plaf.basic

javax.swing.plaf.metal

javax.swing.plaf.multi

javax.swing.plaf.synth

javax.swing.table

javax.swing.text

javax.swing.text

javax.swing.text.parser

javax.swing.text.rtf

javax.swing.tree

javax.swing.undo

javax.transaction

javax.transaction.xa

javax.xml

javax.xml.datatype

javax.xml.namespace

javax.xml.parsers

javax.xml.transform

javax.xml.transform.dom

javax.xml.transform.sax

javax.xml.transform.stream

javax.xml.validation

javax.xml.xpath

org.ietf.jgss

org.omg.CORBA

org.omg.CORBA_2_3

org.omg.CORBA_2_3.portable

org.omg.CORBA.DynAnyPackage

org.omg.CORBA.ORBPackage

org.omg.CORBA.portable

org.omg.CORBA.TypeCodePackage

org.omg.CosNaming

org.omg.CosNaming.NamingContextExtPackage

org.omg.CosNaming.NamingContextPackage

org.omg.Dynamic

org.omg.DynamicAny

org.omg.DynamicAny.DynAnyFactoryPackage

org.omg.DynamicAny.DynAnyPackage

org.omg.IOP

org.omg.IOP.CodecFactoryPackage

org.omg.IOP.CodecPackage

org.omg.Messaging

org.omg.PortableInterceptor

org.omg.PortableInterceptor.ORBInitInfoPackage

org.omg.PortableServer

org.omg.PortableServer.CurrentPackage

org.omg.PortableServer.POAManagerPackage

org.omg.PortableServer.POAPackage

org.omg.PortableServer.portable

org.omg.PortableServer.ServantLocatorPackage

org.omg.SendingContext

org.omg.stub.java.rmi

org.w3c.dom

org.w3c.dom.bootstrap

org.w3c.dom.events

org.w3c.dom.ls

org.xml.sax

org.xml.sax.ext

org.xml.sax.helpers

allclasses-frame

allclasses-noframe

constant-values

deprecated-list

help-doc

JavaTM 2 Platform
Standard Ed. 5.0

java.security
类 ProtectionDomain

java.lang.Object
  继承者 java.security.ProtectionDomain

public class ProtectionDomain
extends Object

此 ProtectionDomain 类 封装域的特征,域中包装一个类集合,在代表给定的主体集合执行这些类的实例时会授予它们一个权限集合。

在构造 ProtectionDomain 时可以对它绑定一个静态的权限集合;不管 Policy 是否有效,都会将这些权限授予域。但是,为了支持动态安全策略,也可以构造 ProtectionDomain,使得只要检查权限时就能通过当前 Policy 将其动态地映射到一个权限集合。


构造方法摘要
ProtectionDomain(CodeSource codesource, PermissionCollection permissions)
          创建具有给定 CodeSource 和 Permissions 的新 ProtectionDomain。
ProtectionDomain(CodeSource codesource, PermissionCollection permissions, ClassLoader classloader, Principal[] principals)
          创建由给定的 CodeSource、Permissions、ClassLoader 和 Principal 数组限定的新 ProtectionDomain。
 
方法摘要
 ClassLoader getClassLoader()
          返回此域的 ClassLoader。
 CodeSource getCodeSource()
          返回此域的 CodeSource。
 PermissionCollection getPermissions()
          返回授予此域的静态权限。
 Principal[] getPrincipals()
          返回此域的 principals 数组。
 boolean implies(Permission permission)
          查看此 ProtectionDomain 是否暗含了 Permission 对象中表示的权限。
 String toString()
          将 ProtectionDomain 转换成为 String。
 
从类 java.lang.Object 继承的方法
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

构造方法详细信息

ProtectionDomain

public ProtectionDomain(CodeSource codesource,
                        PermissionCollection permissions)
创建具有给定 CodeSource 和 Permissions 的新 ProtectionDomain。如果 permissions 对象不为 null,那么将在传入的 Permissions 对象上调用 setReadOnly()。只授予此域那些指定的权限;不参考当前的 Policy。

参数:
codesource - 与此域关联的 codesource
permissions - 授予此域的权限

ProtectionDomain

public ProtectionDomain(CodeSource codesource,
                        PermissionCollection permissions,
                        ClassLoader classloader,
                        Principal[] principals)
创建由给定的 CodeSource、Permissions、ClassLoader 和 Principal 数组限定的新 ProtectionDomain。如果 permissions 对象不为 null,那么将在传入的 Permissions 对象上调用 setReadOnly()。授予此域的权限是动态的;它们包括传递给此构造方法的静态权限以及检查权限时当前 Policy 授予此域的任何权限。

此构造方法通常由 ClassLoadersDomainCombiners 使用,它们委托 Policy 积极地关联授予此域的权限。此构造方法为 Policy provider 提供扩充 PermissionCollection 的机会以反映策略变化。

参数:
codesource - 与此域关联的 CodeSource
permissions - 授予此域的权限
classloader - 与此域关联的 ClassLoader
principals - 与此域关联的 Principals。复制数组的内容,以防随后进行修改。
从以下版本开始:
1.4
另请参见:
Policy.refresh(), Policy.getPermissions(ProtectionDomain)
方法详细信息

getCodeSource

public final CodeSource getCodeSource()
返回此域的 CodeSource。

返回:
此域的 CodeSource,它可以为 null。
从以下版本开始:
1.2

getClassLoader

public final ClassLoader getClassLoader()
返回此域的 ClassLoader。

返回:
此域的 ClassLoader,它可以为 null。
从以下版本开始:
1.4

getPrincipals

public final Principal[] getPrincipals()
返回此域的 principals 数组。

返回:
此域非 null 的 principals 数组。每次调用此方法都返回一个新的数组。
从以下版本开始:
1.4

getPermissions

public final PermissionCollection getPermissions()
返回授予此域的静态权限。

返回:
此域的静态权限集合,它可以为 null。
另请参见:
Policy.refresh(), Policy.getPermissions(ProtectionDomain)

implies

public boolean implies(Permission permission)
查看此 ProtectionDomain 是否暗含了 Permission 对象中表示的权限。

计算的权限集合依赖于该 ProtectionDomain 是用静态的权限集合构造的还是被绑定到动态映射的权限集合。

如果 ProtectionDomain 被构造为静态绑定的 PermissionCollection,那么只会依据构造时提供的 PermissionCollection 来检查权限。

但是,如果 ProtectionDomain 是用支持动态绑定权限的构造方法变体构造的,那么将会依据构造时提供的 PermissionCollection 和当前 Policy 绑定的组合来检查权限。

参数:
permission - 要检查的 Permission 对象。
返回:
如果 "permission" 暗含此 ProtectionDomain 中,则返回 true。

toString

public String toString()
将 ProtectionDomain 转换成为 String。

覆盖:
Object 中的 toString
返回:
该对象的字符串表示形式。

JavaTM 2 Platform
Standard Ed. 5.0

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

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