|
JavaTM 2 Platform Standard Ed. 6 |
|||||||||
上一個類別 下一個類別 | 框架 無框架 | |||||||||
摘要: 巢狀 | 欄位 | 建構子 | 方法 | 詳細資訊: 欄位 | 建構子 | 方法 |
java.lang.Object java.security.cert.X509CRLSelector
public class X509CRLSelector
選擇與所有指定標準相比對的 X509CRL
的 CRLSelector
。從 CertStore
中選擇 CRL 以檢查特定證書的撤消狀態時,此類別特別有用。
最初建構 X509CRLSelector
時,它沒有啟用任何標準,並且每個 get
方法都返回一個預設值 (null
)。因此,對於任意 X509CRL
而言,match
方法將返回 true
。通常,啟用多種標準(例如通過調用 setIssuers
或 setDateAndTime
),然後將 X509CRLSelector
傳遞到 CertStore.getCRLs
或某個類似方法。
有關 X.509 CRL 各欄位和下面所述各擴展的定義,請參閱 RFC 2459。
共時存取
除非另行指定,否則此類別中所定義的方法不是執行緒安全的。需要共時存取單個物件的多個執行緒應該在它們之間實作同步並提供所需的鎖定。對於每個執行緒都操作一個不同物件的多個執行緒而言,無需實作同步。
CRLSelector
,
X509CRL
建構子摘要 | |
---|---|
X509CRLSelector()
創建一個 X509CRLSelector 。 |
方法摘要 | |
---|---|
void |
addIssuer(X500Principal issuer)
向 issuerNames 標準中添加名稱。 |
void |
addIssuerName(byte[] name)
向 issuerNames 標準中添加名稱。 |
void |
addIssuerName(String name)
已過時,使用 addIssuer(X500Principal) 或 addIssuerName(byte[]) 替代。 |
Object |
clone()
返回此物件的副本。 |
X509Certificate |
getCertificateChecking()
返回要檢查的證書。 |
Date |
getDateAndTime()
返回 dateAndTime 標準。 |
Collection<Object> |
getIssuerNames()
返回該 issuerNames 標準的一個副本。 |
Collection<X500Principal> |
getIssuers()
返回 issuerNames 標準。 |
BigInteger |
getMaxCRL()
返回 maxCRLNumber 標準。 |
BigInteger |
getMinCRL()
返回 minCRLNumber 標準。 |
boolean |
match(CRL crl)
決定是否應該選擇某個 CRL 。 |
void |
setCertificateChecking(X509Certificate cert)
設置要檢查的證書。 |
void |
setDateAndTime(Date dateAndTime)
設置 dateAndTime 標準。 |
void |
setIssuerNames(Collection<?> names)
注意:請使用 setIssuers(Collection) 方法,或者使用此方法時僅指定 byte 陣列形式的標識名。 |
void |
setIssuers(Collection<X500Principal> issuers)
設置 issuerNames 標準。 |
void |
setMaxCRLNumber(BigInteger maxCRL)
設置 maxCRLNumber 標準。 |
void |
setMinCRLNumber(BigInteger minCRL)
設置 minCRLNumber 標準。 |
String |
toString()
返回該 X509CRLSelector 的可列印表示形式。 |
從類別 java.lang.Object 繼承的方法 |
---|
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
建構子詳細資訊 |
---|
public X509CRLSelector()
X509CRLSelector
。最初未設置任何標準,所以任何 X509CRL
都比對。
方法詳細資訊 |
---|
public void setIssuers(Collection<X500Principal> issuers)
X509CRL
中的發佈方標識名必須至少與某個指定的標識名相比對。如果指定的標識名為 null
,則將比對任意發佈方標識名。
此方法允許調用方(使用單個方法調用)指定 X509CRL
可能包含的全部發佈方名稱集。指定的值會替換 issuerNames 標準以前的值。
names
參數(如果不為 null
)是一個 X500Principal
的 Collection
。
注意,names
參數可以包含重複的標識名,但是可能從 getIssuers
方法返回的名稱 Collection
中將其移除。
注意,要對該 Collection
執行複製以防後續修改。
issuers
- X500Principals 的 Collection
(或者為 null
)getIssuers()
public void setIssuerNames(Collection<?> names) throws IOException
addIssuerName(String)
。
設置 issuerNames 標準。X509CRL
中的發佈方標識名必須至少與某個指定的標識名相比對。如果指定的標識名為 null
,則將比對任意發佈方標識名。
此方法允許調用方(使用單個方法調用)指定 X509CRL
可能包含的全部發佈方名稱集。指定的值會替換 issuerNames 標準以前的值。
names
參數(如果不為 null
)是一個名稱的 Collection
。每個名稱都是一個 String
或 byte 陣列(分別為 RFC 2253 或 ASN.1 DER 編碼形式),表示一個標識名。如果為此參數提供 null
值,則不執行 issuerNames 檢查。
注意,names
參數可以包含重複的標識名,但是可能從 getIssuerNames
方法返回的名稱 Collection
中將其移除。
如果以 byte 陣列的形式指定名稱,那麼它應該套件含單個 DER 編碼形式的標識名,正如 X.501 中定義的一樣。此結構的 ASN.1 表示如下:
Name ::= CHOICE {
RDNSequence }
RDNSequence ::= SEQUENCE OF RelativeDistinguishedName
RelativeDistinguishedName ::=
SET SIZE (1 .. MAX) OF AttributeTypeAndValue
AttributeTypeAndValue ::= SEQUENCE {
type AttributeType,
value AttributeValue }
AttributeType ::= OBJECT IDENTIFIER
AttributeValue ::= ANY DEFINED BY AttributeType
....
DirectoryString ::= CHOICE {
teletexString TeletexString (SIZE (1..MAX)),
printableString PrintableString (SIZE (1..MAX)),
universalString UniversalString (SIZE (1..MAX)),
utf8String UTF8String (SIZE (1.. MAX)),
bmpString BMPString (SIZE (1..MAX)) }
注意,要對該 Collection
執行深層複製以防後續修改。
names
- 一個名稱 Collection
(或者為 null
)
IOException
- 如果發生解析錯誤getIssuerNames()
public void addIssuer(X500Principal issuer)
X509CRL
中的發佈方標識名必須至少與某個指定的標識名相比對。
此方法允許調用方向 X509CRL
可能包含的發佈方名稱集中添加一個名稱。將指定的名稱添加到 issuerNames 標準的以前值中。如果指定的名稱是重複的,則忽略它。
issuer
- X500Principal 形式的發佈方public void addIssuerName(String name) throws IOException
向 issuerNames 標準中添加名稱。X509CRL
中的發佈方標識名必須至少與某個指定的標識名相比對。
此方法允許調用方向 X509CRL
可能包含的發佈方名稱集中添加一個名稱。將指定的名稱添加到 issuerNames 標準的以前值中。如果指定的名稱是重複的,則忽略它。
name
- RFC 2253 形式的名稱
IOException
- 如果發生解析錯誤public void addIssuerName(byte[] name) throws IOException
X509CRL
中的發佈方標識名必須至少與某個指定的標識名相比對。
此方法允許調用方向 X509CRL
可能包含的發佈方名稱集中添加一個名稱。將指定的名稱添加到 issuerNames 標準的以前值中。如果指定的名稱是重複的,則忽略它。如果以 byte 陣列的形式指定名稱,那麼它應該套件含單個 DER 編碼形式的標識名,正如 X.501 中定義的一樣。此結構的 ASN.1 表示如下:
以 byte 陣列的形式提供該名稱。此 byte 陣列應該套件含單個 DER 編碼形式的標識名,正如 X.501 中定義的一樣。setIssuerNames(Collection names)
的文檔中提供了此結構的 ASN.1 表示。
注意,要複製此處提供的 byte 陣列以防後續修改。
name
- 套件含 ASN.1 DER 編碼形式名稱的 byte 陣列
IOException
- 如果發生解析錯誤public void setMinCRLNumber(BigInteger minCRL)
X509CRL
具有的 CRL 數字擴展的值必須大於或等於指定值。如果其值為 null
,則不執行 minCRLNumber 檢查。
minCRL
- 接受的最小 CRL 數字(或者為 null
)public void setMaxCRLNumber(BigInteger maxCRL)
X509CRL
具有的 CRL 數字擴展的值必須小於等於指定值。如果其值為 null
,則不執行 maxCRLNumber 檢查。
maxCRL
- 接受的最大 CRL 數字(或者為 null
)public void setDateAndTime(Date dateAndTime)
X509CRL
的 thisUpdate 元件的日期,且早於 nextUpdate 元件的值日期。如果 X509CRL
不包含 nextUpdate 元件,則沒有比對。如果其值為 null
,則不執行 dateAndTime 檢查。
注意,要複製此處提供的 Date
以防後續修改。
dateAndTime
- 要進行比對的 Date
(或者為 null
)getDateAndTime()
public void setCertificateChecking(X509Certificate cert)
CertStore
找到相關的 CRL。如果指定為 null
,則不提供此種可選的資訊。
cert
- 要檢查的 X509Certificate
(或者為 null
)getCertificateChecking()
public Collection<X500Principal> getIssuers()
X509CRL
中的發佈方標識名必須至少與某個指定的標識名相比對。如果返回值為 null
,則任意發佈方標識名都比對。
如果返回值不為 null
,則是一個 X500Principal
的不可修改的 Collection
。
Collection
(或者為 null
)setIssuers(java.util.Collection)
public Collection<Object> getIssuerNames()
X509CRL
中的發佈方標識名必須至少與某個指定的標識名相比對。如果返回值為 null
,則任意發佈方標識名都比對。
如果返回值不為 null
,則是一個名稱 Collection
。每個名稱都是一個 String
或 byte 陣列(分別為 RFC 2253 或 ASN.1 DER 編碼形式),表示一個標識名。注意,返回的 Collection
可能包含重複的名稱。
如果以 byte 陣列的形式指定名稱,那麼它應該套件含單個 DER 編碼形式的標識名,正如 X.501 中定義的一樣。setIssuerNames(Collection names)
的文檔中給出了此結構的 ASN.1 表示。
注意,要對該 Collection
執行深層複製以防後續修改。
Collection
(或者為 null
)setIssuerNames(java.util.Collection>)
public BigInteger getMinCRL()
X509CRL
具有的 CRL 數字擴展的值必須大於或等於指定值。如果其值為 null
,則不執行 minCRLNumber 檢查。
null
)public BigInteger getMaxCRL()
X509CRL
具有的 CRL 數字擴展的值必須小於等於指定值。如果其值為 null
,則不執行 maxCRLNumber 檢查。
null
)public Date getDateAndTime()
X509CRL
的 thisUpdate 元件的日期,且早於 nextUpdate 元件的日期。如果 X509CRL
不包含 nextUpdate 元件,則沒有比對。如果其值為 null
,則不執行 dateAndTime 檢查。
注意,要複製返回的 Date
以防後續修改。
Date
(或者為 null
)setDateAndTime(java.util.Date)
public X509Certificate getCertificateChecking()
CertStore
找到相關的 CRL。如果返回值為 null
,則不提供此種可選的資訊。
null
)setCertificateChecking(java.security.cert.X509Certificate)
public String toString()
X509CRLSelector
的可列印表示形式。
Object
中的 toString
X509CRLSelector
內容的 String
。public boolean match(CRL crl)
CRL
。
CRLSelector
中的 match
crl
- 要檢查的 CRL
CRL
,則返回 true
;否則返回 false
public Object clone()
CRLSelector
中的 clone
Object
中的 clone
Cloneable
|
JavaTM 2 Platform Standard Ed. 6 |
|||||||||
上一個類別 下一個類別 | 框架 無框架 | |||||||||
摘要: 巢狀 | 欄位 | 建構子 | 方法 | 詳細資訊: 欄位 | 建構子 | 方法 |
版權所有 2008 Sun Microsystems, Inc. 保留所有權利。請遵守GNU General Public License, version 2 only。