java.security.KeyStore
,该java.security.cert
包, java.security.Principal
。
@Deprecated public abstract class IdentityScope extends Identity
这个类代表身份的范围。 它是一个身份本身,因此有一个名字,可以有一个范围。 它还可以选择具有公钥和相关证书。
IdentityScope可以包含各种身份对象,包括签名者。 可以使用相同的方法检索,添加和删除所有类型的Identity对象。 请注意,实际上可以预期,不同类型的身份范围将针对各种类型的身份对其各种操作应用不同的策略。
密钥和身份之间存在一对一的映射,每个范围只能有一个密钥副本。 例如,假设Acme Software,Inc是用户已知的软件发行商。 假设它是一个身份,也就是它有一个公钥和一组关联的证书。 它在范围中使用名称“Acme软件”命名。 范围中没有其他命名的身份具有相同的公钥。 当然,没有一个也有同样的名字。
Identity
, Signer
, Principal
, Key
, Serialized Form
Modifier | Constructor and Description |
---|---|
protected |
IdentityScope()
已弃用
此构造函数仅用于序列化,不应由子类使用。
|
|
IdentityScope(String name)
已弃用
构造具有指定名称的新的身份范围。
|
|
IdentityScope(String name, IdentityScope scope)
已弃用
构造具有指定名称和范围的新的身份范围。
|
Modifier and Type | Method and Description |
---|---|
abstract void |
addIdentity(Identity identity)
已弃用
向此身份范围添加身份。
|
Identity |
getIdentity(Principal principal)
已弃用
检索其名称与指定的主体相同的身份。
|
abstract Identity |
getIdentity(PublicKey key)
已弃用
使用指定的公钥检索身份。
|
abstract Identity |
getIdentity(String name)
已弃用
以指定的名称(如果有)返回此范围中的身份。
|
static IdentityScope |
getSystemScope()
已弃用
返回系统的身份范围。
|
abstract Enumeration<Identity> |
identities()
已弃用
返回此身份范围内所有身份的枚举。
|
abstract void |
removeIdentity(Identity identity)
已弃用
从此身份范围中删除身份。
|
protected static void |
setSystemScope(IdentityScope scope)
已弃用
设置系统的身份范围。
|
abstract int |
size()
已弃用
返回此身份范围内的身份数。
|
String |
toString()
已弃用
返回此标识范围的字符串表示形式,包括其名称,其范围名称和此身份范围中的身份数。
|
addCertificate, certificates, equals, getInfo, getName, getPublicKey, getScope, hashCode, identityEquals, removeCertificate, setInfo, setPublicKey, toString
protected IdentityScope()
public IdentityScope(String name)
name
- 范围名称。
public IdentityScope(String name, IdentityScope scope) throws KeyManagementException
name
- 范围名称。
scope
- 新身份范围的范围。
KeyManagementException
- 如果范围内已经存在同名的身份。
public static IdentityScope getSystemScope()
null
。
setSystemScope(java.security.IdentityScope)
protected static void setSystemScope(IdentityScope scope)
首先,如果有一个安全管理器,它的checkSecurityAccess
方法"setSystemScope"
作为参数来调用,以确定是否可以设置身份范围。
scope
- 要设置的范围。
SecurityException
- 如果存在安全管理员,并且其
checkSecurityAccess
方法不允许设置身份范围。
getSystemScope()
,
SecurityManager.checkSecurityAccess(java.lang.String)
public abstract int size()
public abstract Identity getIdentity(String name)
name
- 要检索的身份的名称。
name
的身份,如果此范围中没有名为
name
的身份,则为null。
public Identity getIdentity(Principal principal)
principal
- 与要检索的身份相对应的主体。
public abstract Identity getIdentity(PublicKey key)
key
- 要返回身份的公钥。
public abstract void addIdentity(Identity identity) throws KeyManagementException
identity
- 要添加的身份。
KeyManagementException
- 如果身份无效,则会发生名称冲突,另一个身份具有与添加的身份相同的公钥,或发生另一个异常。
public abstract void removeIdentity(Identity identity) throws KeyManagementException
identity
- 要删除的身份。
KeyManagementException
- 如果身份丢失或发生另一个异常。
public abstract Enumeration<Identity> identities()