Класс PKIXBuilderParameters
- java.lang.Object
-
- java.security.cert.PKIXParameters
-
- java.security.cert.PKIXBuilderParameters
- Все реализованные интерфейсы:
- Cloneable, CertPathParameters
public class PKIXBuilderParameters extends PKIXParameters
Параметры, используемые в качестве входных данных для алгоритма PKIX CertPathBuilder.
Алгоритм PKIX CertPathBuilder использует эти параметры для build CertPath, который был проверен в соответствии с алгоритмом проверки сертификационных цепочек PKIX.
Для создания объекта PKIXBuilderParameters, приложение должно указать один или несколько самых надёжных ЦС, как определено алгоритмом проверки сертификационных цепочек PKIX. Самые надёжные ЦС можно указать, используя один из двух конструкторов. Приложение может вызвать PKIXBuilderParameters(Set, CertSelector), указав Set объектов TrustAnchor, каждый из которых идентифицирует самый надёжный ЦС. В качестве альтернативы, приложение может вызвать PKIXBuilderParameters(KeyStore, CertSelector), указав экземпляр KeyStore, содержащий записи надёжных сертификатов, каждый из которых будет рассматриваться как самый надёжный ЦС.
Кроме того, приложение должно указать ограничения на целевой сертификат, к которому CertPathBuilder попытается построить цепочку. Ограничения задаются как объект CertSelector. Эти ограничения должны предоставить CertPathBuilder достаточные критерии поиска целевого сертификата. Минимальные критерии для X509Certificate обычно включают имя субъекта и/или одно или несколько альтернативных имён субъекта. Если не указано достаточно критериев, CertPathBuilder может выбросить CertPathBuilderException.
Доступ к ресурсу из нескольких потоков
Если не указано иное, методы, определённые в этом классе, не потокобезопасны. Несколько потоков, которым необходимо одновременный доступ к одному объекту, должны синхронизироваться между собой и предоставить необходимую блокировку. Несколько потоков, каждый из которых манипулирует отдельными объектами, не нуждаются в синхронизации.
- С:
- 1.4
- См. также:
CertPathBuilder
Конструкторы
| Конструктор и описание |
|---|
PKIXBuilderParameters(KeyStore keystore,
CertSelector targetConstraints)
Создаёт экземпляр |
PKIXBuilderParameters(Set<TrustAnchor> trustAnchors,
CertSelector targetConstraints)
Создаёт экземпляр |
Методы
| Модификатор и тип | Метод и описание |
|---|---|
int |
getMaxPathLength()
Возвращает значение максимального количества промежуточных несамовыданных сертификатов, которые могут существовать в сертификационной цепочке. |
void |
setMaxPathLength(int maxPathLength)
Устанавливает значение максимального количества непроверенных промежуточных сертификатов, которые могут существовать в сертификационной цепочке. |
String |
toString()
Возвращает отформатированную строку, описывающую параметры. |
Методы, унаследованные от класса java.security.cert.PKIXParameters
addCertPathChecker, addCertStore, clone, getCertPathCheckers, getCertStores, getDate, getInitialPolicies, getPolicyQualifiersRejected, getSigProvider, getTargetCertConstraints, getTrustAnchors, isAnyPolicyInhibited, isExplicitPolicyRequired, isPolicyMappingInhibited, isRevocationEnabled, setAnyPolicyInhibited, setCertPathCheckers, setCertStores, setDate, setExplicitPolicyRequired, setInitialPolicies, setPolicyMappingInhibited, setPolicyQualifiersRejected, setRevocationEnabled, setSigProvider, setTargetCertConstraints, setTrustAnchors
Методы, унаследованные от класса java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
Конструкторы
PKIXBuilderParameters
public PKIXBuilderParameters(Set<TrustAnchor> trustAnchors,
CertSelector targetConstraints)
throws InvalidAlgorithmParameterException
Создаёт экземпляр PKIXBuilderParameters со заданным Set самых надёжных ЦС. Каждый элемент множества — TrustAnchor.
Обратите внимание, что Set копируется для защиты от последующих изменений.
- Параметры:
-
trustAnchors- множествоSetTrustAnchor -
targetConstraints-CertSelector, определяющий ограничения на целевой сертификат - Исключения:
-
InvalidAlgorithmParameterException- еслиtrustAnchorsпусто(trustAnchors.isEmpty() == true) -
NullPointerException- еслиtrustAnchorsnull -
ClassCastException- если любой из элементовtrustAnchorsне является объектом типаjava.security.cert.TrustAnchor
PKIXBuilderParameters
public PKIXBuilderParameters(KeyStore keystore,
CertSelector targetConstraints)
throws KeyStoreException,
InvalidAlgorithmParameterException
Создаёт экземпляр PKIXBuilderParameters, заполняющий множество самых надёжных ЦС из записей надёжных сертификатов, содержащихся в указанном KeyStore. Только записи хранилища ключей, содержащие надёжные X509Certificate , учитываются; все другие типы сертификатов игнорируются.
- Параметры:
-
keystore-KeyStore, из которого будет заполняться множество самых надёжных ЦС -
targetConstraints-CertSelector, определяющий ограничения на целевой сертификат - Исключения:
-
KeyStoreException- еслиkeystoreне инициализирован -
InvalidAlgorithmParameterException- еслиkeystoreне содержит хотя бы одну запись надёжного сертификата -
NullPointerException- еслиkeystorenull
Методы
setMaxPathLength
public void setMaxPathLength(int maxPathLength)
Устанавливает значение максимального количества промежуточных несамовыданных сертификатов, которые могут существовать в сертификационной цепочке. Сертификат считается самовыданным, если DN, появляющиеся в полях субъекта и эмитента, идентичны и не пусты. Обратите внимание, что последний сертификат в сертификационной цепочке не является промежуточным сертификатом и не включается в этот предел. Обычно последний сертификат — сертификат конечного пользователя, но он может быть сертификатом ЦС. Экземпляр PKIX CertPathBuilder не должен создавать цепочки, превышающие указанную длину.
Значение 0 означает, что цепочка может содержать только один сертификат. Значение -1 означает, что длина цепочки не ограничена (т.е. нет максимальной длины). По умолчанию максимальная длина цепочки, если не указано иное, составляет 5. Установка значения меньше -1 приведёт к сбою.
Если какой-либо из сертификатов ЦС содержит BasicConstraintsExtension, значение поля pathLenConstraint расширения переопределяет параметр максимальной длины цепочки всякий раз, когда результат — сертификационная цепочка меньшей длины.
- Параметры:
-
maxPathLength- максимальное количество непроверенных промежуточных сертификатов, которые могут существовать в сертификационной цепочке - Исключения:
-
InvalidParameterException- еслиmaxPathLengthустановлено значением меньше -1 - См. также:
getMaxPathLength()
getMaxPathLength
public int getMaxPathLength()
Возвращает значение максимального количества промежуточных несамовыданных сертификатов, которые могут существовать в сертификационной цепочке. Подробнее см. метод setMaxPathLength(int).
- Возвращает:
- максимальное количество непроверенных промежуточных сертификатов, которые могут существовать в сертификационной цепочке, или -1, если нет ограничения
- См. также:
setMaxPathLength(int)
toString
public String toString()
Возвращает отформатированную строку, описывающую параметры.
- Переопределяет:
-
toStringв классеPKIXParameters - Возвращает:
- отформатированную строку, описывающую параметры
© 1993, 2020, 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.