Pull to refresh
0
@rockingread⁠-⁠only

User

Send message

Разработчики всё ещё путают JWT, JWKS, OAuth2 и OpenID Connect — разбираем на примерах. Часть 1

Level of difficultyEasy
Reading time27 min
Reach and readers33K

JWT, SSO, OAuth, OpenID Connect — названия знакомые каждому разработчику. Но стоит спросить: «Зачем в продакшене нужен JWKS?» или «Чем отличается OAuth2 от OpenID Connect?» — уверенность сразу исчезает.

В этой статье мы разберём как устроен JWT и его подпись, зачем нужны access и refresh токены, что такое JWKS и в чём отличие OAuth от OpenID Connect.

Вместо скучных стандартов и спецификаций протоколов в статье будет один наглядный образ на примере отелей и пропусков. Это позволит не только запомнить, но и прочувствовать на реальных примерах, избавиться от хаоса и путаницы в голове, когда речь заходит об аутентификации и авторизации. Цель статьи — не дать «рецепт внедрения», а дать возможность понять, как это работает внутри и «пощупать» эти темы на Go

Читать далее

Java и Project Reactor

Reading time13 min
Reach and readers76K


Всем привет! Меня зовут Лёха, и я работаю бэкенд-разработчиком в FunCorp. Сегодня мы поговорим про реактивное программирование, библиотеку Reactor и немного про веб.


Реактивное программирование часто «подвергается упоминанию», но если вы (как и автор статьи) всё ещё не знаете, что это такое — устраивайтесь поудобнее, попробуем разобраться вместе.

Читать дальше →

Всегда ли нужны Docker, микросервисы и реактивное программирование?

Reading time15 min
Reach and readers52K


Автор: Денис Цыплаков, Solution Architect, DataArt

В DataArt я работаю по двум направлениям. В первом помогаю людям чинить системы, сломанные тем или иным образом и по самым разным причинам. Во втором помогаю проектировать новые системы так, чтобы они в будущем сломаны не были или, если говорить реалистичнее, чтобы сломать их было сложнее.

Если вы не делаете что-то принципиально новое, например, первый в мире интернет-поисковик или искусственный интеллект для управления запуском ядерных ракет, создать дизайн хорошей системы довольно просто. Достаточно учесть все требования, посмотреть на дизайн похожих систем и сделать примерно так же, не совершив при этом грубых ошибок. Звучит как чрезмерное упрощение вопроса, но давайте вспомним, что на дворе 2019 год, и «типовые рецепты» дизайна систем есть практически для всего. Бизнес может подкидывать сложные технические задачи — скажем, обработать миллион разнородных PDF-файлов и вынуть из них таблицы с данными о расходах — но вот архитектура систем редко отличается большой оригинальностью. Главное тут — не ошибиться с определением того, какую именно систему мы строим, и не промахнуться с выбором технологий.

В последнем пункте регулярно возникают типичные ошибки, о некоторых из них я расскажу в статье.
Читать дальше →

Хроники SSO: банк, токены и немного магии

Reading time6 min
Reach and readers7.1K

Привет! Меня зовут Артем Ивлев, и я занимаюсь архитектурой идентификации клиентов банка ВТБ. Наша задача — ответить на вопрос, кто использует наш банковский сервис: мобильный или интернет-банк, голосового помощника или просто один из многочисленных офисов. Для этого есть множество инструментов — и я хочу рассказать про становление одного из них. 

Читать далее

OpenDJ: Использование реляционной СУБД в качестве LDAP каталога

Level of difficultyEasy
Reading time3 min
Reach and readers2.4K

В данной статье мы настроим службу каталогов LDAP OpenDJ таким образом, чтобы она использовала базу данных PostgreSQL в качестве хранилища данных.

Читать далее

Как подготовиться ко всему?

Level of difficultyEasy
Reading time11 min
Reach and readers5.8K

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

Читать далее

Как ускорить сборку с Maven

Reading time3 min
Reach and readers34K
Maven
Что делать, если сборка (build) с Maven проходит слишком медленно? Ведь когда сборка длится слишком долго, любой, даже самый терпеливый разработчик, может заскучать и отвлечься.

Для быстрого поиска в Google или для закладок, сразу предлагаю итоговое решение:
mvn package -am -o -Dmaven.test.skip -T 1C

— для сборки проекта без тестов.
Читать дальше →

Information

Rating
Does not participate
Registered
Activity

Specialization

Бэкенд разработчик, ERP-программист
Средний
Java
Spring Boot
Linux
Git
Английский язык