Spec-Zone.ru › OpenJDK 21

Класс X509CRLSelector

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

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

Для получения определений полей и расширений CRL X.509, упоминаемых ниже, обратитесь к RFC 5280: Internet X.509 Public Key Infrastructure Certificate and CRL Profile.

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

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

С тех пор как:
1.4
См. также:
  • 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 - Collection имён (или null)
Исключения:
IOException - если произошла ошибка при разборе
См. также:
  • 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 - если произошла ошибка при разборе

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

setMaxCRLNumber

public void setMaxCRLNumber(BigInteger maxCRL)
Устанавливает критерий maxCRLNumber. X509CRL должен иметь расширение CRL number со значением, меньшим или равным указанному значению. Если 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 для защиты от последующих изменений.

Returns:
a Collection имён (или null)
See Also:
  • setIssuerNames(java.util.Collection<?>)

getMinCRL

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

getMaxCRL

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

getDateAndTime

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

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

Returns:
the Date для сравнения (или null)
See Also:
  • setDateAndTime(java.util.Date)

getCertificateChecking

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

toString

public String toString()
Возвращает удобочитаемое представление X509CRLSelector.
Overrides:
toString в классе Object
Returns:
a String описывающее содержимое X509CRLSelector.

match

public boolean match(CRL crl)
Определяет, должен ли быть выбран CRL.
Specified by:
match в интерфейсе CRLSelector
Parameters:
crl - проверяемый CRL
Returns:
true если CRL должен быть выбран, false в противном случае

clone

public Object clone()
Возвращает копию этого объекта.
Specified by:
clone в интерфейсе CRLSelector
Overrides:
clone в классе Object
Returns:
копию
See Also:
  • Cloneable

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

Spec-Zone.ru

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