Spec-Zone.ru › OpenJDK 25

Класс X509CRLSelector

java.lang.Object
java.security.cert.X509CRLSelector
Все реализуемые интерфейсы:
Cloneable, CRLSelector
public class X509CRLSelector extends Object implements CRLSelector
Объект CRLSelector, выбирающий X509CRLs, удовлетворяющие всем заданным критериям. Этот класс особенно полезен при выборе списков отозванных сертификатов из CertStore для проверки статуса отзыва конкретного сертификата.

При создании у объекта X509CRLSelector не включены никакие критерии, и каждый из методов get возвращает значение по умолчанию (null). Поэтому метод match будет возвращать true для любого X509CRL. Обычно включают несколько критериев (например, вызывая setIssuers или setDateAndTime), а затем передают X509CRLSelector методу CertStore.getCRLs или аналогичному методу.

Определения упомянутых ниже полей и расширений X.509 CRL см. в RFC 5280: профиле сертификатов и списков отзыва сертификатов (CRL) инфраструктуры открытых ключей Internet X.509.

Параллельный доступ

Если не указано иное, методы, определённые в этом классе, не являются потокобезопасными. Несколько потоков, которым требуется одновременно обращаться к одному объекту, должны синхронизироваться между собой и обеспечивать необходимую блокировку. Потокам, каждый из которых работает с отдельным объектом, синхронизация не требуется.

Начиная с версии:
1.4
Внешние спецификации
  • RFC 5280: профиль сертификатов и списков отзыва сертификатов (CRL) инфраструктуры открытых ключей Internet X.509
См. также:
  • 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) либо указывайте в этом методе только форму различительных имён в виде массива байтов.
void setIssuers(Collection<X500Principal> issuers)
Задаёт критерий issuerNames.
void setMaxCRLNumber(BigInteger maxCRL)
Задаёт критерий maxCRLNumber.
void setMinCRLNumber(BigInteger minCRL)
Задаёт критерий minCRLNumber.
String toString()
Возвращает текстовое представление объекта X509CRLSelector.

Методы, объявленные в классе Object

equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait

Подробное описание конструкторов

X509CRLSelector

public X509CRLSelector()
Создаёт объект X509CRLSelector. Изначально критерии не заданы, поэтому будет соответствовать любой X509CRL.

Подробное описание методов

setIssuers

public void setIssuers(Collection<X500Principal> issuers)
Задаёт критерий issuerNames. Различительное имя издателя в X509CRL должно совпадать хотя бы с одним из указанных различительных имён. Если null, подойдёт любое различительное имя издателя.

Этот метод позволяет вызывающему коду одним вызовом указать полный набор имён издателей, которые может содержать X509CRLs. Указанное значение заменяет предыдущее значение критерия issuerNames.

Параметр names (если он не null) представляет собой Collection из X500Principalов.

Обратите внимание, что параметр names может содержать повторяющиеся различительные имена, однако они могут быть удалены из Collection имён, возвращаемого методом getIssuers.

Обратите внимание, что для защиты от последующих изменений создаётся копия Collection.

Параметры:
issuers — Collection объектов X500Principal (или null)
Начиная с версии:
1.5
См. также:
  • getIssuers()

setIssuerNames

public void setIssuerNames(Collection<?> names) throws IOException
Примечание: вместо этого используйте setIssuers(Collection) либо указывайте в этом методе только форму различительных имён в виде массива байтов. Дополнительные сведения см. в разделе addIssuerName(String).

Задаёт критерий issuerNames. Различительное имя издателя в X509CRL должно совпадать хотя бы с одним из указанных различительных имён. Если null, подойдёт любое различительное имя издателя.

Этот метод позволяет вызывающему коду одним вызовом указать полный набор имён издателей, которые может содержать X509CRLs. Указанное значение заменяет предыдущее значение критерия issuerNames.

Параметр names (если он не null) представляет собой Collection имён. Каждое имя является String или массивом байтов, представляющим различительное имя (соответственно в формате RFC 2253 или в кодировке ASN.1 DER). Если в качестве значения этого аргумента указано null, проверка issuerNames выполняться не будет.

Обратите внимание, что параметр names может содержать повторяющиеся различительные имена, однако они могут быть удалены из Collection имён, возвращаемого методом 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 — Collection имён (или null)
Исключения:
IOException — если произошла ошибка разбора
Внешние спецификации
  • RFC 2253: протокол облегчённого доступа к каталогам (версия 3): представление различительных имён в виде строк UTF-8
См. также:
  • getIssuerNames()

addIssuer

public void addIssuer(X500Principal issuer)
Добавляет имя в критерий issuerNames. Различительное имя издателя в X509CRL должно совпадать хотя бы с одним из указанных различительных имён.

Этот метод позволяет вызывающему коду добавить имя в набор имён издателей, которые может содержать X509CRLs. Указанное имя добавляется к ранее заданному значению критерия issuerNames. Если указанное имя является дубликатом, оно может быть проигнорировано.

Параметры:
issuer — издатель в виде X500Principal
Начиная с версии:
1.5

addIssuerName

@Deprecated(since="16") public void addIssuerName(String name) throws IOException
Устарел.
Вместо него используйте addIssuer(X500Principal) или addIssuerName(byte[]). Не следует полагаться на этот метод, поскольку из-за потери информации о кодировке в строковом представлении некоторых различительных имён в формате RFC 2253 он может не найти соответствующие списки отзыва сертификатов.
Добавляет имя в критерий issuerNames. Различительное имя издателя в X509CRL должно совпадать хотя бы с одним из указанных различительных имён.

Этот метод позволяет вызывающему коду добавить имя в набор имён издателей, которые может содержать X509CRLs. Указанное имя добавляется к ранее заданному значению критерия issuerNames. Если указанное имя является дубликатом, оно может быть проигнорировано.

Параметры:
name — имя в формате RFC 2253
Исключения:
IOException — если произошла ошибка разбора
Внешние спецификации
  • RFC 2253: протокол облегчённого доступа к каталогам (версия 3): представление различительных имён в виде строк UTF-8

addIssuerName

public void addIssuerName(byte[] name) throws IOException
Добавляет имя в критерий issuerNames. Различительное имя издателя в 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)
Задаёт критерий minCRLNumber. X509CRL должен иметь расширение номера CRL со значением, большим или равным указанному. Если null, проверка minCRLNumber выполняться не будет.
Параметры:
minCRL — минимальный допустимый номер CRL (или null)

setMaxCRLNumber

public void setMaxCRLNumber(BigInteger maxCRL)
Задаёт критерий maxCRLNumber. X509CRL должен иметь расширение номера CRL со значением, меньшим или равным указанному. Если null, проверка maxCRLNumber выполняться не будет.
Параметры:
maxCRL — максимальный допустимый номер CRL (или null)

setDateAndTime

public void setDateAndTime(Date dateAndTime)
Задаёт критерий dateAndTime. Указанная дата должна быть равна значению компонента thisUpdate объекта X509CRL или позднее него, а также предшествовать значению компонента nextUpdate. Соответствие отсутствует, если X509CRL не содержит компонента nextUpdate. Если null, проверка dateAndTime выполняться не будет.

Обратите внимание, что переданный сюда объект Date клонируется для защиты от последующих изменений.

Параметры:
dateAndTime — Date для сравнения (или null)
См. также:
  • getDateAndTime()

setCertificateChecking

public void setCertificateChecking(X509Certificate cert)
Задаёт проверяемый сертификат. Это не критерий, а дополнительные сведения, которые могут помочь CertStore найти списки отзыва сертификатов, относящиеся к проверке отзыва указанного сертификата. Если указано null, дополнительные сведения не предоставляются.
Параметры:
cert — проверяемый X509Certificate (или null)
См. также:
  • getCertificateChecking()

getIssuers

public Collection<X500Principal> getIssuers()
Возвращает критерий issuerNames. Различительное имя издателя в X509CRL должно совпадать хотя бы с одним из указанных различительных имён. Если возвращается null, подойдёт любое различительное имя издателя.

Если возвращаемое значение не равно null, это неизменяемый Collection из X500Principalов.

Возвращает:
неизменяемый Collection имён (или null)
Начиная с версии:
1.5
См. также:
  • setIssuers(Collection)

getIssuerNames

public Collection<Object> getIssuerNames()
Возвращает копию критерия issuerNames. Различительное имя издателя в X509CRL должно совпадать хотя бы с одним из указанных различительных имён. Если возвращается null, подойдёт любое различительное имя издателя.

Если возвращаемое значение не равно null, это Collection имён. Каждое имя является String или массивом байтов, представляющим различительное имя (соответственно в формате RFC 2253 или в кодировке ASN.1 DER). Обратите внимание, что возвращаемый Collection может содержать повторяющиеся имена.

Если имя задано в виде массива байтов, он должен содержать одно различительное имя в кодировке DER, как определено в X.501. Нотация ASN.1 для этой структуры приведена в документации метода setIssuerNames(Collection names).

Обратите внимание, что для защиты от последующих изменений создаётся глубокая копия Collection.

Возвращает:
Collection имён (или null)
Внешние спецификации
  • RFC 2253: протокол облегчённого доступа к каталогам (версия 3): представление различительных имён в виде строк UTF-8
См. также:
  • setIssuerNames(Collection)

getMinCRL

public BigInteger getMinCRL()
Возвращает критерий minCRLNumber. X509CRL должен иметь расширение номера CRL со значением, большим или равным указанному. Если null, проверка minCRLNumber выполняться не будет.
Возвращает:
минимальный допустимый номер CRL (или null)

getMaxCRL

public BigInteger getMaxCRL()
Возвращает критерий maxCRLNumber. X509CRL должен иметь расширение номера CRL со значением, меньшим или равным указанному. Если null, проверка maxCRLNumber выполняться не будет.
Возвращает:
максимальный допустимый номер CRL (или null)

getDateAndTime

public Date getDateAndTime()
Возвращает критерий dateAndTime. Указанная дата должна быть равна значению компонента thisUpdate объекта X509CRL или позднее него, а также предшествовать значению компонента nextUpdate. Соответствие отсутствует, если X509CRL не содержит компонента nextUpdate. Если null, проверка dateAndTime выполняться не будет.

Обратите внимание, что возвращаемый объект Date клонируется для защиты от последующих изменений.

Возвращает:
Date для сравнения (или null)
См. также:
  • setDateAndTime(Date)

getCertificateChecking

public X509Certificate getCertificateChecking()
Возвращает проверяемый сертификат. Это не критерий, а дополнительные сведения, которые могут помочь CertStore найти списки отзыва сертификатов, относящиеся к проверке отзыва указанного сертификата. Если возвращается null, дополнительные сведения не предоставляются.
Возвращает:
проверяемый сертификат (или null)
См. также:
  • setCertificateChecking(X509Certificate)

toString

public String toString()
Возвращает текстовое представление объекта X509CRLSelector.
Переопределяет:
toString в классе Object
Возвращает:
String с описанием содержимого объекта X509CRLSelector.

match

public boolean match(CRL crl)
Определяет, следует ли выбирать CRL.
Определён в:
match в интерфейсе CRLSelector
Параметры:
crl — CRL для проверки
Возвращает:
true, если следует выбрать CRL, в противном случае — false

clone

public Object clone()
Возвращает копию этого объекта.
Определён в:
clone в интерфейсе CRLSelector
Переопределяет:
clone в классе Object
Возвращает:
копию
См. также:
  • Cloneable

Сообщить об ошибке или предложить улучшение
Дополнительные справочные материалы по API и документацию для разработчиков см. в разделе Документация Java SE, содержащем более подробные описания для разработчиков, концептуальные обзоры, определения терминов, обходные решения и рабочие примеры кода. Другие версии.
Java является товарным знаком или зарегистрированным товарным знаком Oracle и/или её дочерних компаний в США и других странах.
Авторские права © 1993, 2025, Oracle и/или её дочерние компании, 500 Oracle Parkway, Redwood Shores, CA 94065 USA.
Все права защищены. Использование регулируется условиями лицензии и политикой распространения документации.

© 1993, 2025, 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/25/docs/api/java.base/java/security/cert/X509CRLSelector.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API