Spec-Zone.ru › OpenJDK 24

Класс X509CRLSelector

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

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

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

Доступность в нескольких потоках

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

С:
1.4
Внешние спецификации
  • RFC 5280: Профили сертификатов и списков отозванных сертификатов (CRL) 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.

Методы, унаследованные от класса java.lang.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 X500Principals (или 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 - a Collection имён (или null)
Исключения:
IOException - если произошла ошибка при разборе
Внешние спецификации
  • RFC 2253: Lightweight Directory Access Protocol (v3): UTF-8 String Representation of Distinguished Names
См. также:
  • 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[]) вместо этого. Не рекомендуется полагаться на этот метод, так как он может не соответствовать некоторым CRL из-за потери информации о кодировании в строковом представлении имён из RFC 2253.
Добавляет имя в критерий issuerNames. Имя эмитента в X509CRL должно совпадать хотя бы с одним из указанных имён.

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

Параметры:
name - имя в формате RFC 2253
Исключения:
IOException - если произошла ошибка при разборе
Внешние спецификации
  • RFC 2253: Lightweight Directory Access Protocol (v3): UTF-8 String Representation of Distinguished Names

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 должен иметь расширение CRLNumber со значением, большим или равным заданному. Если null, проверка minCRLNumber не будет выполняться.
Параметры:
minCRL - минимальное значение CRL-номера (или null)

setMaxCRLNumber

public void setMaxCRLNumber(BigInteger maxCRL)
Устанавливает критерий maxCRLNumber. X509CRL должен иметь расширение CRLNumber со значением, меньшим или равным заданному. Если 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 найти CRL, которые были бы актуальны при проверке отзыва для указанного сертификата. Если null указан, то такая дополнительная информация не предоставляется.
Параметры:
cert - проверяемый X509Certificate (или null)
См. также:
  • getCertificateChecking()

getIssuers

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

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

Возвращает:
неизменяемое Collection имён (или null)
С:
1.5
См. также:
  • setIssuers(java.util.Collection<javax.security.auth.x500.X500Principal>)

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: Lightweight Directory Access Protocol (v3): UTF-8 Строковое представление имён
См. также:
  • setIssuerNames(java.util.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(java.util.Date)

getCertificateChecking

public X509Certificate getCertificateChecking()
Возвращает проверяемый сертификат. Это не критерий. Скорее, это необязательная информация, которая может помочь CertStore найти CRL, которые были бы релевантны при проверке отзыва для указанного сертификата. Если возвращаемое значение равно null, то такая необязательная информация не предоставляется.
Возвращает:
проверяемый сертификат (или null)
См. также:
  • setCertificateChecking(java.security.cert.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

© 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://download.java.net/java/early_access/jdk24/docs/api/java.base/java/security/cert/X509CRLSelector.html

Spec-Zone.ru

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