Класс CertStore
public class CertStore extends Object
Certificates и CRLs из репозитория. Этот класс использует архитектуру на основе поставщиков. Чтобы создать CertStore, вызовите один из статических методов getInstance, передав тип требуемого CertStore, все необходимые параметры инициализации и, при необходимости, имя нужного поставщика.
После создания CertStore его можно использовать для получения Certificates и CRLs, вызвав методы getCertificates и getCRLs.
В отличие от KeyStore, предоставляющего доступ к кэшу закрытых ключей и доверенных сертификатов, CertStore предназначен для предоставления доступа к потенциально обширному репозиторию недоверенных сертификатов и списков отзыва сертификатов (CRL). Например, реализация CertStore на основе LDAP предоставляет доступ к сертификатам и спискам отзыва сертификатов, хранящимся в одном или нескольких каталогах, с использованием протокола LDAP и схемы, определенной в атрибуте службы RFC.
Каждая реализация платформы Java должна поддерживать следующий стандартный тип CertStore:
Collection
Параллельный доступ
Все открытые методы объектов CertStore должны быть потокобезопасными. Это означает, что несколько потоков могут одновременно вызывать эти методы для одного или нескольких объектов CertStore без негативных последствий. Благодаря этому CertPathBuilder может, например, искать CRL и одновременно искать другие сертификаты.
Статические методы этого класса также гарантированно являются потокобезопасными. Несколько потоков могут одновременно вызывать статические методы, определенные в этом классе, без негативных последствий.
- Начиная с:
- 1.4
- Внешние спецификации
Краткое описание конструкторов
| Модификатор | Конструктор | Описание |
|---|---|---|
protected |
Создает объект CertStore указанного типа и инкапсулирует в нем указанную реализацию поставщика (объект SPI). |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
final Collection |
getCertificates |
Возвращает Collection из Certificates, соответствующих указанному селектору. |
final CertStoreParameters |
getCertStoreParameters() |
Возвращает параметры, использованные для инициализации этого CertStore. |
final Collection |
getCRLs |
Возвращает Collection из CRLs, соответствующих указанному селектору. |
static final String |
getDefaultType() |
Возвращает тип CertStore по умолчанию, указанный в свойстве безопасности certstore.type, или строку "LDAP", если такое свойство отсутствует. |
static CertStore |
getInstance |
Возвращает объект CertStore, реализующий указанный тип CertStore и инициализированный указанными параметрами. |
static CertStore |
getInstance |
Возвращает объект CertStore, реализующий указанный тип CertStore. |
static CertStore |
getInstance |
Возвращает объект CertStore, реализующий указанный тип CertStore. |
final Provider |
getProvider() |
Возвращает поставщика этого CertStore. |
final String |
getType() |
Возвращает тип этого CertStore. |
Методы, объявленные в классе Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait | Модификатор и тип | Метод | Описание |
|---|---|---|
protected Object |
clone() |
Создает и возвращает копию этого объекта. |
boolean |
equals |
Указывает, равен ли другой объект этому объекту. |
protected void |
finalize() |
Устарело, подлежит удалению: этот элемент API планируется удалить в будущей версии. Финализация объявлена устаревшей и планируется к удалению в одном из следующих выпусков. |
final Class |
getClass() |
Возвращает класс времени выполнения этого Object. |
int |
hashCode() |
Возвращает хеш-код этого объекта. |
final void |
notify() |
Пробуждает один поток, ожидающий на мониторе этого объекта. |
final void |
notifyAll() |
Пробуждает все потоки, ожидающие на мониторе этого объекта. |
String |
toString() |
Возвращает строковое представление объекта. |
final void |
wait() |
Заставляет текущий поток ожидать до пробуждения, обычно в результате вызова notify или interrupt. |
final void |
wait |
Заставляет текущий поток ожидать до пробуждения, обычно в результате вызова notify или interrupt, либо до истечения указанного промежутка реального времени. |
final void |
wait |
Заставляет текущий поток ожидать до пробуждения, обычно в результате вызова notify или interrupt, либо до истечения указанного промежутка реального времени. |
Подробное описание конструкторов
CertStore
protected CertStore(CertStoreSpi storeSpi, Provider provider, String type, CertStoreParameters params)
CertStore указанного типа и инкапсулирует в нем указанную реализацию поставщика (объект SPI).- Параметры:
-
storeSpi— реализация поставщика -
provider— поставщик -
type— тип -
params— параметры инициализации (могут бытьnull)
Подробное описание методов
getCertificates
public final Collection<? extends Certificate> getCertificates(CertSelector selector) throws CertStoreException
Collection из Certificates, соответствующих указанному селектору. Если селектору не соответствует ни один Certificates, будет возвращен пустой Collection. Для некоторых типов CertStore возвращаемый результат Collection может не содержать всех Certificates, соответствующих селектору. Например, LDAP CertStore может не выполнять поиск по всем записям каталога. Вместо этого он может искать только записи, которые, вероятно, содержат искомые Certificates.
Некоторые реализации CertStore (особенно LDAP CertStores) могут выдать CertStoreException, если не предоставлен ненулевой CertSelector с определенными критериями поиска сертификатов. Особенно полезны имена издателя и/или субъекта.
- Параметры:
-
selector—CertSelector, используемый для выбора возвращаемыхCertificates. Укажитеnull, чтобы вернуть всеCertificates (если поддерживается). - Возвращает:
CollectionизCertificates, соответствующих указанному селектору (никогда неnull)- Выбрасывает:
-
CertStoreException— если возникает исключение
getCRLs
public final Collection<? extends CRL> getCRLs(CRLSelector selector) throws CertStoreException
Collection из CRLs, соответствующих указанному селектору. Если селектору не соответствует ни один CRLs, будет возвращен пустой Collection. Для некоторых типов CertStore возвращаемый результат Collection может не содержать всех CRLs, соответствующих селектору. Например, LDAP CertStore может не выполнять поиск по всем записям каталога. Вместо этого он может искать только записи, которые, вероятно, содержат искомые CRLs.
Некоторые реализации CertStore (особенно LDAP CertStores) могут выдать CertStoreException, если не предоставлен ненулевой CRLSelector с определенными критериями поиска списков отзыва сертификатов. Особенно полезны имена издателя и/или проверяемый сертификат.
- Параметры:
-
selector—CRLSelector, используемый для выбора возвращаемыхCRLs. Укажитеnull, чтобы вернуть всеCRLs (если поддерживается). - Возвращает:
CollectionизCRLs, соответствующих указанному селектору (никогда неnull)- Выбрасывает:
-
CertStoreException— если возникает исключение
getInstance
public static CertStore getInstance(String type, CertStoreParameters params) throws InvalidAlgorithmParameterException, NoSuchAlgorithmException
CertStore, реализующий указанный тип CertStore и инициализированный указанными параметрами. Этот метод перебирает список зарегистрированных поставщиков безопасности, начиная с наиболее предпочтительного. Возвращается новый объект CertStore, инкапсулирующий реализацию CertStoreSpi первого поставщика, поддерживающего указанный тип.
Обратите внимание, что список зарегистрированных поставщиков можно получить с помощью метода Security.getProviders().
Возвращаемый CertStore инициализируется указанными CertStoreParameters. Тип необходимых параметров может различаться для разных типов CertStores. Обратите внимание, что указанный объект CertStoreParameters клонируется.
- Примечание по реализации:
- Эталонная реализация JDK дополнительно использует свойство
jdk.security.provider.preferredSecurity, чтобы определить предпочтительный порядок поставщиков для указанного алгоритма. Он может отличаться от порядка поставщиков, возвращаемых методомSecurity.getProviders(). - Параметры:
-
type— имя запрошенного типаCertStore. Сведения о стандартных типах см. в разделе CertStore спецификации стандартных имен алгоритмов безопасности Java. -
params— параметры инициализации (могут бытьnull). - Возвращает:
- объект
CertStore, реализующий указанный типCertStore - Выбрасывает:
-
InvalidAlgorithmParameterException— если указанные параметры инициализации не подходят для этогоCertStore -
NoSuchAlgorithmException— если ни одинProviderне поддерживает реализациюCertStoreSpiдля указанного типа -
NullPointerException— еслиtypeравенnull - Внешние спецификации
- См. также:
getInstance
public static CertStore getInstance(String type, CertStoreParameters params, String provider) throws InvalidAlgorithmParameterException, NoSuchAlgorithmException, NoSuchProviderException
CertStore, реализующий указанный тип CertStore. Возвращается новый объект CertStore, инкапсулирующий реализацию CertStoreSpi указанного поставщика. Указанный поставщик должен быть зарегистрирован в списке поставщиков безопасности.
Обратите внимание, что список зарегистрированных поставщиков можно получить с помощью метода Security.getProviders().
Возвращаемый CertStore инициализируется указанными CertStoreParameters. Тип необходимых параметров может различаться для разных типов CertStores. Обратите внимание, что указанный объект CertStoreParameters клонируется.
- Параметры:
-
type— запрошенный типCertStore. Сведения о стандартных типах см. в разделе CertStore спецификации стандартных имен алгоритмов безопасности Java. -
params— параметры инициализации (могут бытьnull). -
provider— имя поставщика. - Возвращает:
- объект
CertStore, реализующий указанный тип - Выбрасывает:
-
IllegalArgumentException— еслиproviderравенnullили пуст -
InvalidAlgorithmParameterException— если указанные параметры инициализации не подходят для этогоCertStore -
NoSuchAlgorithmException— если у указанного поставщика отсутствует реализацияCertStoreSpiдля указанного типа -
NoSuchProviderException— если указанный поставщик не зарегистрирован в списке поставщиков безопасности -
NullPointerException— еслиtypeравенnull - Внешние спецификации
- См. также:
getInstance
public static CertStore getInstance(String type, CertStoreParameters params, Provider provider) throws NoSuchAlgorithmException, InvalidAlgorithmParameterException
CertStore, реализующий указанный тип CertStore. Возвращается новый объект CertStore, инкапсулирующий реализацию CertStoreSpi указанного объекта Provider. Обратите внимание, что указанный объект Provider не обязательно должен быть зарегистрирован в списке поставщиков.
Возвращаемый CertStore инициализируется указанными CertStoreParameters. Тип необходимых параметров может различаться для разных типов CertStores. Обратите внимание, что указанный объект CertStoreParameters клонируется.
- Параметры:
-
type— запрошенный типCertStore. Сведения о стандартных типах см. в разделе CertStore спецификации стандартных имен алгоритмов безопасности Java. -
params— параметры инициализации (могут бытьnull). -
provider— поставщик. - Возвращает:
- объект
CertStore, реализующий указанный тип - Выбрасывает:
-
IllegalArgumentException— еслиproviderравен null -
InvalidAlgorithmParameterException— если указанные параметры инициализации не подходят для этогоCertStore -
NoSuchAlgorithmException— если у указанного объекта Provider отсутствует реализацияCertStoreSpiдля указанного типа -
NullPointerException— еслиtypeравенnull - Внешние спецификации
- См. также:
getCertStoreParameters
public final CertStoreParameters getCertStoreParameters()
CertStore. Обратите внимание, что объект CertStoreParameters клонируется перед возвратом.- Возвращает:
- параметры, использованные для инициализации этого
CertStore(могут бытьnull)
getType
public final String getType()
CertStore.- Возвращает:
- тип этого
CertStore
getProvider
public final Provider getProvider()
CertStore.- Возвращает:
- поставщик этого
CertStore
getDefaultType
public static final String getDefaultType()
CertStore по умолчанию, указанный в свойстве безопасности certstore.type, или строку "LDAP", если такое свойство отсутствует. Тип CertStore по умолчанию может использоваться приложениями, которые не хотят указывать жестко заданный тип при вызове одного из методов getInstance и хотят задать тип CertStore по умолчанию на случай, если пользователь не укажет свой вариант.
Тип CertStore по умолчанию можно изменить, задав требуемый тип в свойстве безопасности certstore.type.
- Возвращает:
- тип
CertStoreпо умолчанию, указанный в свойстве безопасностиcertstore.type, или строку "LDAP", если такое свойство отсутствует. - См. также:
© 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.