Я добавляю аутентификацию в свой API, используя общие ограничения безопасности для Интернета, но, похоже, он сломал мой фильтр CORS. Ранее я работал с фильтром и без проверки подлинности на уровне сервера приложений.Поддержка jBoss CORS с ограничениями безопасности
Основная идея состоит в том, чтобы требовать аутентификации во всех запросах, ожидающих те, которые находятся в конечной точке/rest/account, так как это те, которые обрабатывают начальный логин и поэтому должны быть общедоступными.
Тестирование как в Chrome, так и в Postman возвращает 405 метод не разрешенного ответа, когда вызов OPTIONS выполняется как часть запроса POST при попытке входа в систему.
Надеюсь, я предоставил все, что уместно ниже, но дайте мне знать, если что-то еще необходимо. Заранее спасибо!
Мои CORS фильтр
<filter>
<filter-name>CORS</filter-name>
<filter-class>com.thetransactioncompany.cors.CORSFilter</filter-class>
<init-param>
<param-name>cors.supportedMethods</param-name>
<param-value>*</param-value>
</init-param>
<init-param>
<param-name>cors.supportedHeaders</param-name>
<param-value>*</param-value>
</init-param>
<init-param>
<param-name>cors.allowOrigin</param-name>
<param-value>*</param-value>
</init-param>
<init-param>
<param-name>cors.allowSubdomains</param-name>
<param-value>true</param-value>
</init-param>
<init-param>
<param-name>cors.supportsCredentials</param-name>
<param-value>true</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>CORS</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
Мои ограничения безопасности
<security-constraint>
<display-name>WebsiteUsers</display-name>
<web-resource-collection>
<web-resource-name>WebsiteAPI</web-resource-name>
<description/>
<url-pattern>/rest/*</url-pattern>
</web-resource-collection>
<auth-constraint>
<description>Standard User authentication</description>
<role-name>Users</role-name>
</auth-constraint>
</security-constraint>
<security-constraint>
<web-resource-collection>
<web-resource-name>Public</web-resource-name>
<description>Matches a few special endpoints</description>
<url-pattern>/rest/account/*</url-pattern>
</web-resource-collection>
<!-- No auth-constraint means everybody has access! -->
</security-constraint>