public abstract class IdentityScope
extends Identity
java.lang.Object | ||
↳ | java.security.Identity | |
↳ | java.security.IdentityScope |
此类已在API级别1中弃用。
这个类不再使用。 它的功能已经被替换为java.security.KeyStore
,该java.security.cert
包, java.security.Principal
。
这个类代表了身份的范围。 这是一个身份本身,因此有一个名称,可以有一个范围。 它也可以有一个公钥和相关的证书。
IdentityScope可以包含各种身份对象,包括签名者。 可以使用相同的方法检索,添加和删除所有类型的Identity对象。 请注意,有可能并且事实上预计,不同类型的身份范围将对其各种类型的身份的各种操作应用不同的策略。
密钥和身份之间有一对一的映射,每个作用域只能有一个密钥的副本。 例如,假设Acme Software,Inc是用户已知的软件发行商。 假设它是一个标识,也就是说它有一个公钥和一组相关的证书。 它在名称范围内命名为“Acme Software”。 范围中没有其他指定的Identity具有相同的公钥。 当然,没有人有相同的名字。
Public constructors |
|
---|---|
IdentityScope(String name) 用指定名称构造一个新的身份范围。 |
|
IdentityScope(String name, IdentityScope scope) 用指定的名称和范围构造一个新的身份范围。 |
Protected constructors |
|
---|---|
IdentityScope() 此构造函数仅用于序列化,不应由子类使用。 |
Public methods |
|
---|---|
abstract void |
addIdentity(Identity identity) 为此身份范围添加身份。 |
abstract Identity |
getIdentity(String name) 使用指定名称(如果有)返回此作用域中的标识。 |
abstract Identity |
getIdentity(PublicKey key) 使用指定的公钥检索身份。 |
Identity |
getIdentity(Principal principal) 检索名称与指定主体相同的标识。 |
static IdentityScope |
getSystemScope() 返回系统的身份范围。 |
abstract Enumeration<Identity> |
identities() 返回此标识范围中的所有标识的枚举。 |
abstract void |
removeIdentity(Identity identity) 从此身份范围中移除身份。 |
abstract int |
size() 返回此身份范围内的身份数。 |
String |
toString() 返回此标识范围的字符串表示形式,包括其名称,范围名称以及此标识范围中的标识数目。 |
Protected methods |
|
---|---|
static void |
setSystemScope(IdentityScope scope) 设置系统的身份范围。 |
Inherited methods |
|
---|---|
From class java.security.Identity
|
|
From class java.lang.Object
|
|
From interface java.security.Principal
|
IdentityScope (String name)
用指定名称构造一个新的身份范围。
Parameters | |
---|---|
name |
String : the scope name. |
IdentityScope (String name, IdentityScope scope)
用指定的名称和范围构造一个新的身份范围。
Parameters | |
---|---|
name |
String : the scope name. |
scope |
IdentityScope : the scope for the new identity scope. |
Throws | |
---|---|
KeyManagementException |
if there is already an identity with the same name in the scope. |
void addIdentity (Identity identity)
为此身份范围添加身份。
Parameters | |
---|---|
identity |
Identity : the identity to be added. |
Throws | |
---|---|
KeyManagementException |
if the identity is not valid, a name conflict occurs, another identity has the same public key as the identity being added, or another exception occurs. |
Identity getIdentity (String name)
使用指定名称(如果有)返回此作用域中的标识。
Parameters | |
---|---|
name |
String : the name of the identity to be retrieved. |
Returns | |
---|---|
Identity |
the identity named name , or null if there are no identities named name in this scope. |
Identity getIdentity (PublicKey key)
使用指定的公钥检索身份。
Parameters | |
---|---|
key |
PublicKey : the public key for the identity to be returned. |
Returns | |
---|---|
Identity |
the identity with the given key, or null if there are no identities in this scope with that key. |
Identity getIdentity (Principal principal)
检索名称与指定主体相同的标识。 (注:身份执行主体。)
Parameters | |
---|---|
principal |
Principal : the principal corresponding to the identity to be retrieved. |
Returns | |
---|---|
Identity |
the identity whose name is the same as that of the principal, or null if there are no identities of the same name in this scope. |
IdentityScope getSystemScope ()
返回系统的身份范围。
Returns | |
---|---|
IdentityScope |
the system's identity scope, or null if none has been set. |
Enumeration<Identity> identities ()
返回此标识范围中的所有标识的枚举。
Returns | |
---|---|
Enumeration<Identity> |
an enumeration of all identities in this identity scope. |
void removeIdentity (Identity identity)
从此身份范围中移除身份。
Parameters | |
---|---|
identity |
Identity : the identity to be removed. |
Throws | |
---|---|
KeyManagementException |
if the identity is missing, or another exception occurs. |
int size ()
返回此身份范围内的身份数。
Returns | |
---|---|
int |
the number of identities within this identity scope. |
String toString ()
返回此标识范围的字符串表示形式,包括其名称,范围名称以及此标识范围中的标识数目。
Returns | |
---|---|
String |
a string representation of this identity scope. |
void setSystemScope (IdentityScope scope)
设置系统的身份范围。
首先,如果存在安全管理器, checkSecurityAccess
"setSystemScope"
作为参数调用其 checkSecurityAccess
方法,以查看是否可以设置身份作用域。
Parameters | |
---|---|
scope |
IdentityScope : the scope to set. |
Throws | |
---|---|
SecurityException |
if a security manager exists and its checkSecurityAccess method doesn't allow setting the identity scope. |