212 похожих чатов

Почему аутентификация и авторизация не относятся к логике предметной области?

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

Это же всё задачи авторизации, понять, что тот или иной актор имеет те или иные права. И все эти акторы и их права - взяты из бизнеса. Почему тогда это не задача предметной области.🤷‍♂

2 ответов

9 просмотров

А давай зайдём с другой стороны - почему возникает такой вопрос? Ну мол не все ли равно. Скажем "фин деректор утверждает отчёт" - значит ли это что логике утверждения там и ревью есть дело что это именно фин директор и в целом кто определяет эти правила. Правила кому что можно скорее всего будут меняться независимо от "как что происходит". По этой причине мы хотим разделить эти вещи. + Ещё важный фактор - насколько логика поддается обобщению. Простой rbac как ты описал отлично поддается и в целом можно взять готовый продукт для управления доступами и т.д. это будет свой контекст который относится к generic домену и разница лишь в том что для generic ты будешь брать from the shelf software по возможности.

Nikolay-Deriglazov Автор вопроса
Sergey P
А давай зайдём с другой стороны - почему возникает...

Вы верно пишете, про responsibility segregation. Почему сам агрегат не должен это проверять-то? Это же доменное правило.

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

Обсуждают сегодня

читать файл максимально быстро? странный вопрос))
zamtmn
53
тоесть, указав return eax, сгенерируется никому ненужная инструкция mov eax,eax ?
Aiwan \ (•◡•) / _bot
24
Кто-нибудь решал проблему с автоматическим скроллингом к выбранной ячейке в TDBGrid в Lazarus? Проблема в том, что есть допустим 3 столбца, третий столбец виден наполовину, вк...
Дмитрий Логинов
1
Приветствуем всех! Устали без проектов? Если вы программист и хотите получать стабильные заказы, компания Elif предлагает вам недельный курс по поиску проектов и их ведению. ...
Elif
1
А чего сейчас в моде вместо Error для эксепшенов? А то я тут внезапно узрел что он не рекомендуется :) У Try::Tiny какой-то совершенно ужасный синтаксис если надо конкретные э...
Denis F
19
а зачем этот вопрос для удаления из чата?
Mёdkinson Medvezhkin
63
Чорт! Чорт! Чорт! Стала ставить через GetIt (написано же, что ручками не рекомендуется) Сломалось на дублировании моей TSkLabel. Чтож мне ее по всем проектам переименовывать в...
Катерина Свиридова
7
Привет. Сразу скажу, что на C/C++/Rust я не пишу, но тем не менее возникла потребность дебага C/C++/Rust кода. Суть: есть серверное приложение, которое периодически ведёт себ...
ninekeem 🐳
4
Hey someone plz help to resolve my issue here is my table... Log { id user_id type target_ct target_obj_id action_ct action_obj_id workspace_id created_at } i wanna fil...
Rahul Singh
1
всем привет! углубившись в плюсы и начав изучать реверсинг понял, что без асм'а никуда со своими высокоабстрактными представлениями начал изучать механизмы асма, и не совсем п...
9
Карта сайта