Как временно отключить spring security

Как временно отключить Spring Security в веб-приложении Spring

Во-первых, я полный нуб, когда дело доходит до Spring. Заявление на работу мне оставил коллега, который сейчас в отпуске. Он сказал мне оставить безопасность в покое, так как окончательный подход еще не решен, и просто разработать rest приложения.

Однако безопасность включена и предотвращает доступ к главной веб-странице. Я проверил несколько документов в том числе

не найдя ответа, который сработает.

Я сделал следующее:

Добавлено index.html к в web.xml. Это направляет меня на страницу входа в систему, которая уже была включена в пакет, который я взял на себя. Поэтому я решил, что могу просто отключить систему безопасности.

В spring security.xml добавлен атрибут security=»none». Теперь я больше не получаю страницу входа в систему. Я получаю чистую страницу.

В web.xml гостей с ограниченными физическими

Все равно получишь пустую страницу.

Я вижу много других советов, но они предполагают гораздо больше знаний Spring, чем у меня есть в настоящее время.

Например, в 4-й ссылке выше я вижу:

Я не знаю, что они означают. Я предполагаю, что это означает поместить эти аннотации где-то в какой-то метод, но я не могу поверить, что это может быть ANYWHERE в любом классе java в приложении. Есть ли пример того, как это сделать?

Может ли кто-нибудь указать мне правильное направление? Спасибо.

3 ответа

Помогите мне советом, пожалуйста. Мне нужно отключить / включить spring security в моем приложении по какой-то переменной в файле xml. мой файл spring-security.xml

Закомментируйте теги в файле security XML и предоставьте доступ ко всем страницам. Это должно сработать.

Это, казалось, сработало (в spring-security.xml)

Похожие вопросы:

У меня есть веб-приложение, которое имеет spring security и по умолчанию все страницы требуют авторизации. В моем сценарии администратор может в какой-то момент решить отключить безопасность для.

Я новичок на Grails. Я установил плагин Spring Security, но хотел бы временно отключить его. Каков самый простой способ отключить этот плагин (или любой другой плагин Grails)?

Как настроить Spring Security в веб-приложении? Я добавил три JAR файлы на Либ: безопасность ядра, безопасность сети и безопасность-конфигурации. Теперь что мне нужно добавить в файл конфигурации.

Источник

Как временно отключить Spring Безопасность в Spring веб-приложении

Во-первых, я полный noob, когда дело доходит до Spring. Мне было подано ходатайство о том, чтобы я работал на коллеге, который сейчас находится в отпуске. Он сказал мне оставить безопасность в одиночку, поскольку окончательный подход еще не решен, и просто разработайте остальную часть приложения.

Однако защита включена и запрещает доступ к главной веб-странице. Я проверил несколько документов, включая

не найдя ответ, который работает.

Я сделал следующее:

Добавлен index.html в в web.xml. Это направляет меня на страницу входа, которая уже включена в пакет, который я взял. Итак, я решил, что могу просто отключить безопасность.

В Spring security.xml добавлен атрибут security = «none». Теперь я больше не получаю страницу входа. Я получаю пустую страницу.

В отключенном web.xml

По-прежнему получать пустую страницу.

Я вижу много других советов, но он предполагает гораздо больше знаний Spring, чем я в настоящее время.

Например, в 4-й ссылке выше я вижу:

Если вы определяете @Configuration с @EnableWebSecurity в любом месте ваше приложение отключит защиту по умолчанию для webapp настройки в Spring Загрузка.

Я не знаю, что они означают. Я предполагаю, что это означает помещать эти аннотации на какой-то метод где-то, но я не могу поверить, что это может идти в любом классе Java в приложении. Есть ли пример этого?

Может ли кто-нибудь указать мне правильное направление? Спасибо.

Источник

Spring boot Security Disable security

When I use security.basic.enabled=false to disable security on a Spring Boot project that has the following dependencies:

I see the following Exception:

Could someone please let me know if my understanding is wrong?

Как временно отключить spring security. Смотреть фото Как временно отключить spring security. Смотреть картинку Как временно отключить spring security. Картинка про Как временно отключить spring security. Фото Как временно отключить spring security

20 Answers 20

In case you have spring-boot-actuator in your package, you should add the following

In newer versions this has changed to

UPDATE

If for reactive application you are having the same issue, you can exclude the following classes

What also seems to work fine is creating a file application-dev.properties that contains:

If you then start your Spring Boot app with the dev profile, you don’t need to log on.

For Spring Boot 2 following properties are deprecated in application.yml configuration

To disable security for Sprint Boot 2 Basic + Actuator Security following properties can be used in application.yml file instead of annotation based exclusion (@EnableAutoConfiguration(exclude = ))

For application.properties syntax would be like

Как временно отключить spring security. Смотреть фото Как временно отключить spring security. Смотреть картинку Как временно отключить spring security. Картинка про Как временно отключить spring security. Фото Как временно отключить spring security

If you need security as a dependency but don’t want Spring Boot to configure it for you, you can use this exclusion:

For the spring boot 2 users it has to be

Step 1: Comment annotation @EnableWebSecurity in your security config

Step 2: Add this to your application.properties file.

Answer is to allow all requests in WebSecurityConfigurerAdapter as below.

you can do this in existing class or in new class.

Please note : If ther is existing GlobalMethodSecurityConfiguration class, you must disable it.

Add following class into your code

And insie of application.properties add

Как временно отключить spring security. Смотреть фото Как временно отключить spring security. Смотреть картинку Как временно отключить spring security. Картинка про Как временно отключить spring security. Фото Как временно отключить spring security

If you are using @WebMvcTest annotation in your test class

You can disable security here

Как временно отключить spring security. Смотреть фото Как временно отключить spring security. Смотреть картинку Как временно отключить spring security. Картинка про Как временно отключить spring security. Фото Как временно отключить spring security

Permit access to everything using antMatchers(«/»)

Как временно отключить spring security. Смотреть фото Как временно отключить spring security. Смотреть картинку Как временно отключить spring security. Картинка про Как временно отключить spring security. Фото Как временно отключить spring security

The only thing that worked for me:

Could be that the properties part is redundant or can be done in code, but had no time to experiment. Anyway is temporary.

Как временно отключить spring security. Смотреть фото Как временно отключить spring security. Смотреть картинку Как временно отключить spring security. Картинка про Как временно отключить spring security. Фото Как временно отключить spring security

The easiest way for Spring Boot 2 without dependencies or code changes is just:

You need to add this entry to application.properties to bypass Springboot Default Security

Then there won’t be any authentication box. otrws, credentials are:- user and 99b962fa-1848-4201-ae67-580bdeae87e9 (password randomly generated)

Note: my springBootVersion = ‘1.5.14.RELEASE’

Как временно отключить spring security. Смотреть фото Как временно отключить spring security. Смотреть картинку Как временно отключить spring security. Картинка про Как временно отключить spring security. Фото Как временно отключить spring security

You can configure to toggle spring security in your project by following below 2 steps:

STEP 1: Add a @ConditionalOnProperty annotation on top of your SecurityConfig class. Refer below:

STEP 2: Add following config to your application.properties or application.yml file.

application.properties

application.yml

Как временно отключить spring security. Смотреть фото Как временно отключить spring security. Смотреть картинку Как временно отключить spring security. Картинка про Как временно отключить spring security. Фото Как временно отключить spring security

In order to avoid security you can use annotations. Use this annotation on top of configure class:

Как временно отключить spring security. Смотреть фото Как временно отключить spring security. Смотреть картинку Как временно отключить spring security. Картинка про Как временно отключить spring security. Фото Как временно отключить spring security

Как временно отключить spring security. Смотреть фото Как временно отключить spring security. Смотреть картинку Как временно отключить spring security. Картинка про Как временно отключить spring security. Фото Как временно отключить spring security

Add the below lines to your main app.

Remove org.activiti.spring.boot.SecurityAutoConfiguration.class if you’re not using activiti.

Similarly, remove the one for actuator if you’re not using spring-boot-actuator.

As previously multiple solutions mentioned to disable security through commenting of

annotation and other is through properties in application.properties or yml. But those properties are showing as deprecated in latest spring boot version.

So, I would like to share another approach to configure default username and password in your application-dev.properties or application-dev.yml and use them to login into swagger and etc in development environment.

So, this approach will also provides you some kind of security as well and you can share this information with your development team. You can also configure user roles as well, but its not required in development level.

Источник

Spring Boot 2.0 отключить безопасность по умолчанию

Вот что я пробовал:

Как я могу просто отключить базовую безопасность?

UPDATE
Было бы неплохо знать, что я использую не веб-MVC, а веб-поток.

11 ответов

Согласно новым обновлениям в Spring 2.0, если Spring Security находится на пути к классам, Spring Boot добавит @ EnableWebSecurity. Поэтому добавление записей в application.properties не будет работать (т. Е. Больше не будет настраиваться таким образом). Для получения дополнительной информации посетите официальный веб-сайт Изменения безопасности в Spring Boot 2.0

Хотя я точно не уверен в вашем требовании, я мог бы подумать об одном обходном пути, подобном следующему:

Надеюсь это поможет.

Добавляя какой-то свежий ответ, я предполагаю, что все используют привод, если бы я не поспорил, что одного класса исключения должно быть достаточно, мне удалось отключить через свойства:

Я сослался на два класса автоконфигурации через свойство, чтобы сохранить длину неизменной (обратите внимание, что IntelliJ Ultimate будет плакать, если вы так на него ссылаетесь, поскольку он понятия не имеет, что это за значения-заполнители и действительно ли они являются допустимыми классами, поэтому встроенный, если что тебя раздражает).

Однако приложение не может запуститься, как утверждают:

Если вы просто отключите SecurityAutoConfiguration

Если это сработало, вы перестанете видеть автоматически сгенерированный пароль, и это будет немного менее запутанным, чем принятый ответ, так как чтение чтения журнала не будет смущено сгенерированным паролем для базовой аутентификации, в то время как безопасность позволяет все.

Почему просто отключить основной класс автоконфигурации недостаточно из-за этого парня:

Была проделана тонна работы по разделению конфигурации привода и безопасности, которая смутила нас всех, теперь она более прямолинейна, но подобные артефакты все еще существуют. Весенние разработчики меня поправят, если я ошибаюсь :-).

По ссылке Документация, конфигурация безопасности для разрешения всех запросов с WebFlux должна выглядеть следующим образом:

Начиная с Spring Boot 2.1, если вы включили spring-boot-привод, больше не достаточно исключать только SecurityAutoconfiguration, вам также необходимо исключить ManagementWebSecurityAutoConfiguration, например:

Проблема с org.springframework.security.web.server.authorization.ExceptionTranslationWebFilter

У него private ServerAuthenticationEntryPoint authenticationEntryPoint = new HttpBasicServerAuthenticationEntryPoint();

Поэтому, чтобы исправить это во время инициализации ServerHttpSecurity, добавьте:

Похоже, что vanilla (сервлет) Spring использует org.springframework.security.config.annotation.web.configurers.ExceptionHandlingConfigurer # createDefaultEntryPoint

Примечание: изменяемые поля в компонентах стиля компоновщика (например, ExceptionTranslationWebFilter) затрудняют отладку весеннего кода (также слишком волшебная конфигурация)

В Spring boot 2 нет способа отключить базовую аутентификацию с помощью файла application.properties. Но единственное, это использовать аннотации

В основном классе. Оно работает

Если кто-то борется с этим в приложении на основе WebFlux или в приложении Spring Cloud Gateway, мне помогло следующее:

Эта точка входа добавляет

Заголовок, который говорит вашему браузеру использовать Basic Auth.

Вы можете добавить / изменить следующее в своем классе Application:

Это сработало для меня:

Технически безопасность все еще настроена, но широко открыта.

Источник

Spring boot Security Отключить безопасность

Когда я использую security.basic.enabled = false, чтобы отключить безопасность в проекте Spring Boot, который имеет следующие зависимости:

Я вижу следующее исключение:

Может ли кто-нибудь сообщить мне, если я неправильно понимаю?

Если вы затем запустите приложение Spring Boot с dev профилем, вам не нужно будет входить в систему.

Если у вас есть пружинный привод в комплекте, вы должны добавить следующие

В более новых версиях это изменилось на

Если вам нужна безопасность как зависимость, но вы не хотите, чтобы Spring Boot настраивал ее за вас, вы можете использовать это исключение:

Для пользователей Spring boot 2 это должно быть

Для Spring Boot 2 следующие свойства устарели в конфигурации application.yml

Чтобы отключить безопасность для Sprint Boot 2 Basic + Actuator Security, в файле application.yml можно использовать следующие свойства вместо исключения на основе аннотаций (@EnableAutoConfiguration (exclude = ))

Для application.properties синтаксис будет как

Шаг 1. Прокомментируйте аннотацию @EnableWebSecurity в конфигурации безопасности

Добавьте следующий класс в свой код

И insie из application.properties добавить

Если вы используете @WebMvcTest аннотацию в своем тестовом классе

Вы можете отключить безопасность здесь

вы можете сделать это в существующем классе или в новом классе.

Обратите внимание: если существует класс GlobalMethodSecurityConfiguration, вы должны отключить его.

Разрешить доступ ко всему с помощью antMatchers («/»)

В целях безопасности вы можете использовать аннотации. Используйте эту аннотацию поверх класса configure:

Вам необходимо добавить эту запись в application.properties, чтобы обойти безопасность Springboot по умолчанию

Note: my springBootVersion = ‘1.5.14.RELEASE’

Вы можете настроить переключение Spring Security в своем проекте, выполнив следующие 2 шага:

ШАГ 1: Добавьте @ConditionalOnProperty аннотацию поверх вашего класса SecurityConfig. См. Ниже:

ШАГ 2: Добавьте следующую конфигурацию в ваш application.properties или application.yml файл.

application.properties

application.yml

Единственное, что у меня сработало:

Возможно, часть свойств избыточна или может быть реализована в коде, но не было времени на эксперименты. В любом случае временно.

Самый простой способ для Spring Boot 2 без зависимостей или изменений кода:

Добавьте приведенные ниже строки в свое основное приложение.

Удалите org.activiti.spring.boot.SecurityAutoConfiguration.class, если вы не используете activiti.

Точно так же снимите один для привода, если вы не используете пружинный привод.

Как упоминалось ранее, несколько решений для отключения безопасности путем комментирования

Итак, я хотел бы поделиться другим подходом к настройке имени пользователя и пароля по умолчанию в вашем application-dev.properties или application-dev.yml и использовать их для входа в swagger и т.д. в среде разработки.

Таким образом, этот подход также обеспечит вам некоторую безопасность, и вы можете поделиться этой информацией со своей командой разработчиков. Вы также можете настроить роли пользователей, но это не требуется на уровне разработки.

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *