Класс X509CRLSelector
- Все реализованные интерфейсы:
-
Cloneable,CRLSelector
public class X509CRLSelector extends Object implements CRLSelector
При первом создании класс не имеет активированных критериев, и каждый из методов для работы с критериями возвращает значения по умолчанию (null). Поэтому, метод match вернёт true для любого CRL. Обычно несколько критериев активируются (например, вызовом setIssuers или setDateAndTime), а затем этот объект передаётся в метод CertStore.getCRLs или подобный ему.
Обратитесь к RFC 5280: Профили сертификатов и списков отозванных сертификатов (CRL) X.509 для Интернета для определений полей и расширений CRL X.509, упомянутых ниже.
Доступность в нескольких потоках
Если не указано иное, методы, определённые в этом классе, не потокобезопасны. Несколько потоков, которые нуждаются в одновременном доступе к одному объекту, должны синхронизироваться между собой и обеспечить необходимую блокировку. Несколько потоков, каждый манипулирующий отдельными объектами, синхронизироваться не нужно.
- С:
- 1.4
- Внешние спецификации
- См. также:
Краткое описание конструкторов
| Конструктор | Описание |
|---|---|
X509CRLSelector() |
Создаёт объект X509CRLSelector. |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
void |
addIssuer |
Добавляет имя в критерий issuerNames. |
void |
addIssuerName |
Добавляет имя в критерий issuerNames. |
void |
addIssuerName |
Устарело. |
Object |
clone() |
Возвращает копию этого объекта. |
X509Certificate |
getCertificateChecking() |
Возвращает проверяемый сертификат. |
Date |
getDateAndTime() |
Возвращает критерий dateAndTime. |
Collection |
getIssuerNames() |
Возвращает копию критерия issuerNames. |
Collection |
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 может содержать дублированные имена, но они могут быть удалены из Collection имён, возвращаемых методом getIssuers.
Обратите внимание, что выполняется копия Collection для защиты от последующих изменений.
- Параметры:
-
issuers-CollectionX500Principals (или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 может содержать дублированные имена, но они могут быть удалены из 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- 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 должен иметь расширение CRLNumber со значением, большим или равным заданному. Если null, проверка minCRLNumber не будет выполняться.- Параметры:
-
minCRL- минимальное значение CRL-номера (илиnull)
setMaxCRLNumber
public void setMaxCRLNumber(BigInteger maxCRL)
X509CRL должен иметь расширение CRLNumber со значением, меньшим или равным заданному. Если null, проверка maxCRLNumber не будет выполняться.- Параметры:
-
maxCRL- максимальное значение CRL-номера (илиnull)
setDateAndTime
public void setDateAndTime(Date dateAndTime)
X509CRL и раньше значения компонента nextUpdate. Соответствия не будет, если X509CRL не содержит компонент nextUpdate. Если null, проверка dateAndTime не будет выполняться. Обратите внимание, что Date, предоставленный здесь, клонируется для защиты от последующих изменений.
- Параметры:
-
dateAndTime-Dateдля сопоставления (или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, это Collection имён. Каждое имя представляет собой строку String или массив байтов, представляющий имя (в формате RFC 2253 или ASN.1 DER, соответственно). Обратите внимание, что возвращённое Collection может содержать дублирующиеся имена.
Если имя указано в виде массива байтов, он должен содержать одно DER-кодированное имя, как определено в X.501. ASN.1 обозначение этой структуры приведено в документации по setIssuerNames(Collection names).
Обратите внимание, что выполняется глубокая копия Collection для защиты от последующих изменений.
- Возвращает:
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 клонируется для защиты от последующих изменений.
- Возвращает:
Dateдля проверки (илиnull)- См. также:
getCertificateChecking
public X509Certificate getCertificateChecking()
CertStore найти CRL, которые были бы релевантны при проверке отзыва для указанного сертификата. Если возвращаемое значение равно null, то такая необязательная информация не предоставляется.- Возвращает:
- проверяемый сертификат (или
null) - См. также:
toString
match
public boolean match(CRL crl)
CRL.- Определено в:
-
matchв интерфейсеCRLSelector - Параметры:
-
crl- проверяемыйCRL - Возвращает:
-
true, еслиCRLдолжен быть выбран,falseв противном случае
clone
public Object clone()
- Определено в:
-
cloneв интерфейсеCRLSelector - Переопределяет:
-
cloneв классеObject - Возвращает:
- копию
- См. также:
© 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
addIssuer(X500Principal)илиaddIssuerName(byte[])вместо этого.