Класс X509CRLSelector
- Все реализованные интерфейсы:
-
Cloneable,CRLSelector
public class X509CRLSelector extends Object implements CRLSelector
X509CRLs, соответствующие всем указанным критериям. Этот класс особенно полезен при выборе CRL из CertStore для проверки статуса отзыва конкретного сертификата. При первом создании в объекте X509CRLSelector нет активных критериев, и каждый из методов get возвращает значение по умолчанию (null). Поэтому метод match вернёт true для любого X509CRL. Как правило, несколько критериев активируются (например, вызовом setIssuers или setDateAndTime), а затем полученный объект X509CRLSelector передаётся в метод CertStore.getCRLs или аналогичный ему.
Обратитесь к RFC 5280: Internet X.509 Public Key Infrastructure Certificate and CRL Profile для определений полей CRL X.509 и расширений, упомянутых ниже.
Доступ к объекту из нескольких потоков
Если не указано иное, методы, определённые в этом классе, не являются потокобезопасными. Несколько потоков, которые нуждаются в одновременном доступе к одному объекту, должны синхронизироваться между собой и обеспечить необходимую блокировку. Несколько потоков, которые манипулируют разными объектами, не нуждаются в синхронизации.
- С:
- 1.4
- См. также:
Краткое описание конструкторов
| Конструктор | Описание |
|---|---|
X509CRLSelector() |
Создаёт X509CRLSelector. |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
void |
addIssuer |
Добавляет имя в критерий issuerNames. |
void |
addIssuerName |
Добавляет имя в критерий issuerNames. |
void |
addIssuerName |
Устарело. |
Object |
clone() |
Возвращает копию этого объекта. |
X509Certificate |
getCertificateChecking() |
Возвращает проверяемый сертификат. |
Date |
getDateAndTime() |
Возвращает критерий dateAndTime. |
Collection<Object> |
getIssuerNames() |
Возвращает копию критерия issuerNames. |
Collection<X500Principal> |
getIssuers() |
Возвращает критерий issuerNames. |
BigInteger |
getMaxCRL() |
Возвращает критерий maxCRLNumber. |
BigInteger |
getMinCRL() |
Возвращает критерий minCRLNumber. |
boolean |
match |
Определяет, следует ли выбрать CRL. |
void |
setCertificateChecking |
Устанавливает проверяемый сертификат. |
void |
setDateAndTime |
Устанавливает критерий dateAndTime. |
void |
setIssuerNames |
Примечание: используйте setIssuers(Collection) вместо этого или указывайте только байтовый массив вида различенных имен при использовании этого метода. |
void |
setIssuers |
Устанавливает критерий issuerNames. |
void |
setMaxCRLNumber |
Устанавливает критерий maxCRLNumber. |
void |
setMinCRLNumber |
Устанавливает критерий minCRLNumber. |
String |
toString() |
Возвращает удобочитаемое представление X509CRLSelector. |
Подробное описание конструкторов
X509CRLSelector
public X509CRLSelector()
X509CRLSelector. Изначально критерии не установлены, поэтому любой X509CRL будет соответствовать.Подробное описание методов
setIssuers
public void setIssuers(Collection<X500Principal> issuers)
X509CRL должно совпадать хотя бы с одним из указанных имён отличительных характеристик. Если null, подойдёт любое имя отличительной характеристики эмитента. Этот метод позволяет вызывающей стороне указать, с помощью одного вызова метода, весь набор имён эмитентов, который X509CRLs может содержать. Указанное значение заменяет предыдущее значение для критерия issuerNames.
Параметр names (если он не null) — это Collection X500Principal.
Обратите внимание, что параметр names может содержать повторяющиеся имена отличительных характеристик, но они могут быть удалены из набора имён, возвращаемых методом getIssuers.
Обратите внимание, что выполняется копирование Collection для защиты от последующих изменений.
- Параметры:
-
issuers- aCollectionX500Principals (илиnull) - С тех пор:
- 1.5
- См. также:
setIssuerNames
public void setIssuerNames(Collection<?> names) throws IOException
addIssuerName(String) для получения дополнительной информации. Устанавливает критерий issuerNames. Имя отличительной характеристики эмитента в X509CRL должно совпадать хотя бы с одним из указанных имён отличительных характеристик. Если null, подойдёт любое имя отличительной характеристики эмитента.
Этот метод позволяет вызывающей стороне указать, с помощью одного вызова метода, весь набор имён эмитентов, который X509CRLs может содержать. Указанное значение заменяет предыдущее значение для критерия issuerNames.
Параметр names (если он не null) — это Collection имён. Каждое имя — это String или байтовый массив, представляющий имя отличительной характеристики (в формате RFC 2253 или в кодировке ASN.1 DER соответственно). Если null задано в качестве значения для этого аргумента, проверка issuerNames не будет выполняться.
Обратите внимание, что параметр names может содержать повторяющиеся имена отличительных характеристик, но они могут быть удалены из набора имён, возвращаемых методом getIssuerNames.
Если имя задано как байтовый массив, оно должно содержать одно 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- aCollectionимён (илиnull) - Исключения:
-
IOException- если произошла ошибка при разборе - См. также:
addIssuer
public void addIssuer(X500Principal issuer)
X509CRL должно совпадать хотя бы с одним из указанных имён отличительных характеристик. Этот метод позволяет вызывающей стороне добавить имя в набор имён эмитентов, который X509CRLs может содержать. Указанное имя добавляется к любому предыдущему значению для критерия issuerNames. Если указанное имя является дубликатом, оно может быть проигнорировано.
- Параметры:
-
issuer- эмитент в формате X500Principal - С тех пор:
- 1.5
addIssuerName
@Deprecated(since="16") public void addIssuerName(String name) throws IOException
addIssuer(X500Principal) или addIssuerName(byte[]) вместо этого. На этот метод не стоит полагаться, поскольку он может не соответствовать некоторым CRL из-за потери информации о кодировке в строковом представлении RFC 2253 некоторых имён отличительных характеристик.X509CRL должно совпадать хотя бы с одним из указанных имён отличительных характеристик. Этот метод позволяет вызывающей стороне добавить имя в набор имён эмитентов, который X509CRLs может содержать. Указанное имя добавляется к любому предыдущему значению для критерия issuerNames. Если указанное имя является дубликатом, оно может быть проигнорировано.
- Параметры:
-
name- имя в формате RFC 2253 - Исключения:
-
IOException- если произошла ошибка при разборе
addIssuerName
public void addIssuerName(byte[] name) throws IOException
X509CRL должно совпадать хотя бы с одним из указанных имён отличительных характеристик. Этот метод позволяет вызывающей стороне добавить имя в набор имён эмитентов, который X509CRLs может содержать. Указанное имя добавляется к любому предыдущему значению для критерия issuerNames. Если указанное имя является дубликатом, оно может быть проигнорировано. Если имя задано как байтовый массив, оно должно содержать одно DER-кодированное имя отличительной характеристики, как определено в X.501. ASN.1 обозначение для этой структуры приведено ниже.
Имя предоставляется в виде байтового массива. Этот байтовый массив должен содержать одно DER-кодированное имя отличительной характеристики, как определено в X.501. ASN.1 обозначение для этой структуры приведено в документации для setIssuerNames(Collection names).
Обратите внимание, что байтовый массив, предоставленный здесь, клонируется для защиты от последующих изменений.
- Параметры:
-
name- байтовый массив, содержащий имя в кодировке ASN.1 DER - Исключения:
-
IOException- если произошла ошибка при разборе
setMinCRLNumber
public void setMinCRLNumber(BigInteger minCRL)
X509CRL должен иметь расширение CRL номера, значение которого больше или равно указанному значению. Если null, проверка minCRLNumber не будет выполняться.- Параметры:
-
minCRL- минимальный номер CRL (илиnull)
setMaxCRLNumber
public void setMaxCRLNumber(BigInteger maxCRL)
X509CRL должен иметь расширение CRL номера, значение которого меньше или равно указанному значению. Если null, проверка maxCRLNumber не будет выполняться.- Параметры:
-
maxCRL- максимальный номер CRL (илиnull)
setDateAndTime
public void setDateAndTime(Date dateAndTime)
X509CRL и раньше значения компонента nextUpdate. Совпадения не будет, если X509CRL не содержит компонент nextUpdate. Если null, проверка dateAndTime не будет выполняться. Обратите внимание, что Date клонируется для защиты от последующих изменений.
- Параметры:
-
dateAndTime- дата для соответствия (илиnull) - См. также:
setCertificateChecking
public void setCertificateChecking(X509Certificate cert)
CertStore найти CRL, которые были бы уместны при проверке отзыва для указанного сертификата. Если null указан, такая необязательная информация не предоставляется.- Параметры:
-
cert- проверяемыйX509Certificate(илиnull) - См. также:
getIssuers
public Collection<X500Principal> getIssuers()
X509CRL должно совпадать хотя бы с одним из указанных имён отличительных характеристик. Если возвращаемое значение null, подойдёт любое имя отличительной характеристики эмитента. Если возвращаемое значение не null, это неизменяемый Collection X500Principal.
- Возвращает:
- неизменяемый
Collectionимён (илиnull) - С тех пор:
- 1.5
- См. также:
getIssuerNames
public Collection<Object> getIssuerNames()
X509CRL должен соответствовать по крайней мере одному из указанных идентификаторов. Если возвращаемое значение null, подойдет любой идентификатор издателя. Если возвращаемое значение не null, это коллекция имён. Каждое имя — это String или массив байтов, представляющий собой идентификатор (соответственно, в формате RFC 2253 или в кодировке ASN.1 DER). Обратите внимание, что возвращенная Collection может содержать повторяющиеся имена.
Если имя задано как массив байтов, он должен содержать единственный DER-закодированный идентификатор, как определено в X.501. ASN.1-нотация для этой структуры приведена в документации к setIssuerNames(Collection names).
Обратите внимание, что выполняется глубокая копия Collection для защиты от последующих изменений.
- Возвращает:
- коллекцию имён (или
null) - См. также:
getMinCRL
public BigInteger getMinCRL()
X509CRL должен иметь расширение CRL-номера, значение которого больше или равно указанному значению. Если null, проверка minCRLNumber не будет выполнена.- Возвращает:
- минимальный номер CRL (или
null)
getMaxCRL
public BigInteger getMaxCRL()
X509CRL должен иметь расширение CRL-номера, значение которого меньше или равно указанному значению. Если null, проверка maxCRLNumber не будет выполнена.- Возвращает:
- максимальный номер CRL (или
null)
getDateAndTime
public Date getDateAndTime()
X509CRL и раньше значения компонента nextUpdate. Совпадения не будет, если X509CRL не содержит компонента nextUpdate. Если null, проверка dateAndTime не будет выполнена. Обратите внимание, что возвращаемый Date клонируется для защиты от последующих изменений.
- Возвращает:
- дата/время для соответствия (или
null) - См. также:
getCertificateChecking
public X509Certificate getCertificateChecking()
CertStore найти CRL, которые были бы актуальны при проверке отзыва для указанного сертификата. Если возвращаемое значение null, такая необязательная информация не предоставляется.- Возвращает:
- проверяемый сертификат (или
null) - См. также:
toString
public String toString()
X509CRLSelector.- Переопределяет:
-
toStringв классеObject - Возвращает:
- строковое представление содержимого
X509CRLSelector.
match
public boolean match(CRL crl)
CRL.- Определено в:
-
matchв интерфейсеCRLSelector - Параметры:
-
crl-CRLдля проверки - Возвращает:
-
trueеслиCRLследует выбрать,falseв противном случае
clone
public Object clone()
- Определено в:
-
cloneв интерфейсеCRLSelector - Переопределяет:
-
cloneв классеObject - Возвращает:
- копию
- См. также:
© 1993, 2021, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/security/cert/X509CRLSelector.html
addIssuer(X500Principal)илиaddIssuerName(byte[])вместо этого.