Перейти к основному содержимому

151 запись с тегом "Spring Security"

Посмотреть все теги

· 12 мин. чтения

1. Обзор

В этой статье мы сосредоточимся на основных случаях использования аутентификации сертификата X.509 — проверке подлинности узла связи при использовании протокола HTTPS (HTTP через SSL).

Проще говоря — пока устанавливается безопасное соединение, клиент проверяет сервер по своему сертификату (выданному доверенным центром сертификации).

Но помимо этого, X.509 в Spring Security можно использовать для проверки личности клиента сервером при подключении. Это называется «взаимной аутентификацией», и мы также рассмотрим, как это делается здесь.

Наконец, мы коснемся того, когда имеет смысл использовать этот вид аутентификации .

Чтобы продемонстрировать проверку сервера, мы создадим простое веб-приложение и установим пользовательский центр сертификации в браузере.

· 7 мин. чтения

1. Введение

В этой статье мы рассмотрим новые функции среды Spring Security 5 для защиты реактивных приложений. Этот выпуск соответствует Spring 5 и Spring Boot 2.

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

2. Настройка Мавена

Мы будем использовать стартеры Spring Boot для начальной загрузки нашего проекта со всеми необходимыми зависимостями.

· 6 мин. чтения

1. Обзор

В этой статье мы добавим функцию «Запомнить меня» в защищенное приложение OAuth 2, используя токен обновления OAuth 2.

Эта статья является продолжением нашей серии статей об использовании OAuth 2 для защиты Spring REST API, доступ к которому осуществляется через клиент AngularJS. Для настройки сервера авторизации, сервера ресурсов и клиентского интерфейса вы можете следовать вводной статье .

Примечание . В этой статье используется устаревший проект Spring OAuth .

2. Токен доступа OAuth 2 и токен обновления

· 3 мин. чтения

1. Обзор

В этой статье мы рассмотрим, как обрабатывать исключения Spring Security, создаваемые нашим Spring Security Resource Server . Для этого мы также будем использовать практический пример, в котором будут объяснены все необходимые конфигурации. Прежде всего, давайте сделаем краткое введение в Spring Security.

2. Весенняя безопасность

Spring Security — это библиотека, которая является частью проекта Spring. Он пытается сгруппировать все функции управления доступом пользователей в проектах Spring . Контроль доступа позволяет ограничить параметры, которые могут выполняться заданным набором пользователей или ролей в приложении. В этом направлении Spring Security контролирует вызовы бизнес-логики или ограничивает доступ HTTP-запросов к определенным URL-адресам . Имея это в виду, мы должны настроить приложение, сообщив Spring Security, как должен вести себя уровень безопасности.

В нашем случае мы сосредоточимся на настройке обработчиков исключений. Spring Security предлагает три разных интерфейса для достижения этой цели и управления создаваемыми событиями:

· 4 мин. чтения

1. Обзор

Keycloak — это система управления идентификацией и доступом (IAM) с открытым исходным кодом, которая хорошо интегрируется с приложением Spring Boot. В этом руководстве мы опишем, как получить идентификатор пользователя Keycloak в приложении Spring Boot.

2. Постановка задачи

Keycloak предоставляет такие функции, как защита REST API, федерация пользователей, тонкая авторизация, вход через социальные сети, двухфакторная аутентификация (2FA) и т. д. Кроме того, мы можем использовать его для реализации единого входа ( SSO ) с использованием OpenID Connect ( ОИДК ). Предположим, что у нас есть приложение Spring Boot, защищенное OIDC с помощью Keycloak, и мы хотим получить идентификатор пользователя в приложении Spring Boot. В этой ситуации нам потребуется получить токен доступа или контекст безопасности в приложении Spring Boot.

2.1. Keycloak Server как сервер авторизации

· 10 мин. чтения

1. Обзор

Проще говоря, Spring Security поддерживает семантику авторизации на уровне метода.

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

В этом руководстве мы рассмотрим использование некоторых аннотаций безопасности. Затем мы сосредоточимся на тестировании безопасности нашего метода с помощью различных стратегий.

2. Включение безопасности метода

· 8 мин. чтения

1. Обзор

В этом руководстве мы обсудим атаки подделки межсайтовых запросов (CSRF) и способы их предотвращения с помощью Spring Security.

2. Две простые CSRF-атаки

Существует несколько форм CSRF-атак. Давайте обсудим некоторые из наиболее распространенных.

· 8 мин. чтения

1. Введение

В этом руководстве мы покажем, как передать решения об авторизации Spring Security в OPA — Open Policy Agent .

2. Преамбула: случай внешней авторизации

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

Однако есть и другие случаи, когда нам нужна большая гибкость. Решения по управлению доступом типичны: по мере усложнения приложения предоставление доступа к определенной функциональности может зависеть не только от того, кто вы, но и от других контекстуальных аспектов запроса. Эти аспекты могут включать, среди прочего, IP-адрес, время суток и метод аутентификации при входе (например, «запомнить меня», OTP).

· 4 мин. чтения

1. Обзор

В этом руководстве мы рассмотрим, как настроить Spring Security для использования разных конфигураций безопасности для разных шаблонов URL.

Это полезно, когда приложение требует большей безопасности для определенных операций, а другие разрешены для всех пользователей.

2. Настройка

Начнем с настройки приложения.

· 7 мин. чтения

1. Введение

OAuth — это открытый стандарт, описывающий процесс авторизации. Его можно использовать для авторизации доступа пользователей к API. Например, REST API может ограничить доступ только для зарегистрированных пользователей с соответствующей ролью.

Сервер авторизации OAuth отвечает за аутентификацию пользователей и выдачу токенов доступа, содержащих пользовательские данные и соответствующие политики доступа.

В этом руководстве мы реализуем простое приложение OAuth, используя проект Spring Security OAuth Authorization Server .

В процессе мы создадим клиент-серверное приложение, которое будет получать список статей ForEach из REST API. Как для клиентских служб, так и для серверных служб потребуется аутентификация OAuth.

2. Реализация сервера авторизации