Когда я пытаюсь перейти по URL-адресу с помощью Postman, он работает нормально, используя мой личный сертификат. Но когда я попробовал то же самое, используя тестовый пример Rest Assured, он выдает вышеуказанное исключение.
Класс конфигурации
public class Configuration {
protected SSLConfig config = null;
private static final Logger LOG = LoggerFactory.getLogger(Configuration.class);
@SuppressWarnings("deprecation")
@BeforeClass
public void setKeystore()
{
KeyStore keyStore = null;
KeyStore trustStore = null;
try {
String certPassword = System.getProperty("certPassword");
String certPath = System.getProperty("certPath");
String trustStorePassword = System.getProperty("trustStorePassword");
String trustStorePath = System.getProperty("trustStorePath");
Validate.notNull(certPath, "Path to Certificate on the file system cannot be null");
Validate.notEmpty(certPassword, "Password cannot be empty");
Validate.notNull(trustStorePath, "Path to trustStore on the file system cannot be null");
Validate.notEmpty(trustStorePassword, "TrustStore Password cannot be empty");
keyStore = KeyStore.getInstance("JKS");
keyStore.load(new FileInputStream(certPath), certPassword.toCharArray());
trustStore = KeyStore.getInstance("JKS");
trustStore.load(new FileInputStream(trustStorePath), trustStorePassword.toCharArray());
if (keyStore != null) {
org.apache.http.conn.ssl.SSLSocketFactory clientAuthFactory = new org.apache.http.conn.ssl.SSLSocketFactory(
keyStore, certPassword, trustStore);
config = new SSLConfig().with().sslSocketFactory(clientAuthFactory).and().allowAllHostnames();
}
EnvironmentConstants.getEnvironment();
} catch (Exception e) {
LOG.error("Error while loading keystore");
e.printStackTrace();
}
}
@BeforeTest
public Properties loadproperties() {
InputStream input = getClass().getClassLoader().getResourceAsStream("errorMessages.properties");
Properties properties = new Properties();
try {
properties.load(input);
} catch (IOException e) {
e.printStackTrace();
}
return properties;
}
}
Подробнее здесь: https://stackoverflow.com/questions/452 ... he-subject
Javax.net.ssl.SSLException: сертификат для <> не соответствует ни одному из альтернативных имен субъекта: [] ⇐ JAVA
Программисты JAVA общаются здесь
1736774772
Anonymous
Когда я пытаюсь перейти по URL-адресу с помощью Postman, он работает нормально, используя мой личный сертификат. Но когда я попробовал то же самое, используя тестовый пример Rest Assured, он выдает вышеуказанное исключение.
Класс конфигурации
public class Configuration {
protected SSLConfig config = null;
private static final Logger LOG = LoggerFactory.getLogger(Configuration.class);
@SuppressWarnings("deprecation")
@BeforeClass
public void setKeystore()
{
KeyStore keyStore = null;
KeyStore trustStore = null;
try {
String certPassword = System.getProperty("certPassword");
String certPath = System.getProperty("certPath");
String trustStorePassword = System.getProperty("trustStorePassword");
String trustStorePath = System.getProperty("trustStorePath");
Validate.notNull(certPath, "Path to Certificate on the file system cannot be null");
Validate.notEmpty(certPassword, "Password cannot be empty");
Validate.notNull(trustStorePath, "Path to trustStore on the file system cannot be null");
Validate.notEmpty(trustStorePassword, "TrustStore Password cannot be empty");
keyStore = KeyStore.getInstance("JKS");
keyStore.load(new FileInputStream(certPath), certPassword.toCharArray());
trustStore = KeyStore.getInstance("JKS");
trustStore.load(new FileInputStream(trustStorePath), trustStorePassword.toCharArray());
if (keyStore != null) {
org.apache.http.conn.ssl.SSLSocketFactory clientAuthFactory = new org.apache.http.conn.ssl.SSLSocketFactory(
keyStore, certPassword, trustStore);
config = new SSLConfig().with().sslSocketFactory(clientAuthFactory).and().allowAllHostnames();
}
EnvironmentConstants.getEnvironment();
} catch (Exception e) {
LOG.error("Error while loading keystore");
e.printStackTrace();
}
}
@BeforeTest
public Properties loadproperties() {
InputStream input = getClass().getClassLoader().getResourceAsStream("errorMessages.properties");
Properties properties = new Properties();
try {
properties.load(input);
} catch (IOException e) {
e.printStackTrace();
}
return properties;
}
}
Подробнее здесь: [url]https://stackoverflow.com/questions/45224718/javax-net-ssl-sslexception-certificate-for-doesnt-match-any-of-the-subject[/url]
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия