powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Java [игнор отключен] [закрыт для гостей] / Сертефикат
5 сообщений из 5, страница 1 из 1
Сертефикат
    #39402851
Фотография -=Koba=-
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Отправляю запрос с клиента на сервер

Получаю

Код: java
1.
OPTIONS https://localhost:8443/services/admin/ net::ERR_INSECURE_RESPONSE



Если перейти по этой ссылке в бразуере, то выскочит окно с
"Ошибочный сертификат, нет доверия" принять итд

Если принять, то у после отправки запроса с клиента на сервер получаю

Код: java
1.
XMLHttpRequest cannot load https://localhost:8443/services/admin. Response to preflight request doesn't pass access control check: No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'http://127.0.0.1:8888' is therefore not allowed access.




Тут уже ошибка CORS
Собственно вопросы

1) Как сделать, чтоб при отправке запроса с клиента на сервер, сертификат принимался по умолчанию
2) Кроме как открыть доступ CORS на сервер есть дли другие варианты решения проблемы с доступом?
...
Рейтинг: 0 / 0
Сертефикат
    #39403179
Sergunka
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
-=Koba=-1) Как сделать, чтоб при отправке запроса с клиента на сервер, сертификат принимался по умолчанию


Обычно это делается когда в trustStore на сервере находится открытый ключ вашего клиента. Так же у вас на клиенте в trustStore должен находится отркрытый ключ сервера если речь идет понятно о SSL протоколе.

У меня есть статья там очень подробно разжеванно все вплоть до того как надо дебажить посмотрите пожалуйста

https://vyatkins.wordpress.com/2013/11/19/java-base-ssl-connection-to-tomcat-with-server-and-client-certifications/
...
Рейтинг: 0 / 0
Сертефикат
    #39403347
Фотография -=Koba=-
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Спасибо почитаю вечером.
...
Рейтинг: 0 / 0
Сертефикат
    #39420977
Фотография -=Koba=-
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
При попытке подключения к REST получаю следующую ошибку
Код: java
1.
OPTIONS https://localhost:8553/services/test net::ERR_INSECURE_RESPONSE



Если напрямую открыть ссылку в браузере, то предлагается сохранить сертификат
автор"Ошибочный сертификат. Opera не может проверить подлинность сервера "localhost" из-за проблем с сертификатом. Возможно, сервер пытается ввести вас в заблуждение. Продолжить?"
и соединение устанавливается (на WildFly настроен SSL) и далее REST приходит на клиент.

Далее при попытки авторизации, выше описанная ошибка пропадает, но появляется ошибка связанная с CORS
Код: java
1.
XMLHttpRequest cannot load https://localhost:8553/services/test. Response to preflight request doesn't pass access control check: No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'http://127.0.0.1:8888' is therefore not allowed access.



Ее решил с помощью cors-filter на стороне сервера
Pom.xml
Код: java
1.
2.
3.
4.
5.
6.
<dependency>
    <groupId>com.thetransactioncompany</groupId>
    <artifactId>cors-filter</artifactId>
    <version>${cors-filter.version}</version>
    <scope>provided</scope>
</dependency>



Web.xml
Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
    <filter>
        <filter-name>CORS</filter-name>
        <filter-class>com.thetransactioncompany.cors.CORSFilter</filter-class>

        <init-param>
            <param-name>cors.allowOrigin</param-name>
            <param-value>*</param-value>
        </init-param>

        <init-param>
            <param-name>cors.supportedHeaders</param-name>
            <param-value>authorization, content-type, x-http-method-override</param-value>
        </init-param>

        <init-param>
            <param-name>cors.maxAge</param-name>
            <param-value>1800</param-value>
        </init-param>

        <init-param>
            <param-name>cors.exposedHeaders</param-name>
            <param-value>authorization</param-value>
        </init-param>

        <init-param>
            <param-name>cors.supportedMethods</param-name>
            <param-value>GET, POST, HEAD, PUT, DELETE, OPTIONS</param-value>
        </init-param>
    </filter>

    <filter-mapping>
        <filter-name>CORS</filter-name>
        <url-pattern>/*</url-pattern>
    </filter-mapping>



Собственно, вопросы:
Можно ли сделать, чтоб принятие сертификатов происходило , когда открыт клиент, а не в отдельной вкладке открывать URL и далее принимать его. И сертификат действует почему-то на сессию (пока открыт браузер). Пробовал добавить в корневой узел, но все равно (может неправильно установил).
Можно ли обойти CORS без установки дополнительных библиотек или написания своего Filter? Был бы оптимален вариант на уровне сертификатов, если установлен у клиента, то автоматически работают все header в заголовках запросов.
...
Рейтинг: 0 / 0
Сертефикат
    #39421004
questioner
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
-=Koba=-,

Сертефикат
...
Рейтинг: 0 / 0
5 сообщений из 5, страница 1 из 1
Форумы / Java [игнор отключен] [закрыт для гостей] / Сертефикат
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]