Усі бізнес-рішення щодо доступу до:
оголошення процедур,
подання заявок,
роботи з реєстрами
повинні базуватись виключно на даних permitions, отриманих з endpoint.
Система повинна перевіряти цілісність структури permitions, зокрема:
наявність ключа permitions;
наявність секцій procedures, jobber, registry (за потреби);
допустимі значення (procedure, bids, object).
Система повинна дозволяти подання заявок учасниками, якщо permitions.procedures.<procedure_name> = bids
Для напрямків LP* система повинна перевіряти: permitions.jobber.large_announcement = object
Без відповідних permitions створення SP/LP процедур забороняється**.
Система повинна дозволяти роботу з реєстром об’єктів оренди, якщо: permitions.registry.registry = object
У разі відсутності permitions доступ до:
створення об’єктів;
створення LL* процедур
повинен бути заблокований.
Користувачі не повинні бачити дій, які їм недоступні згідно permitions.
Обробка permitions не повинна впливати на продуктивність UI.
Усі перевірки permitions повинні логуватись для аудиту. - Чи потрібно ?
У разі недоступності endpoint:
використовується остання валідна версія permitions;
користувачі не отримують помилок UI.
Система не повинна надавати нові доступи без підтверджених permitions.
Назва | Отримання permitions з системного endpoint |
| Актори |
|
Передумови |
|
Основний хід подій (дій) |
|
Альтернативні шляхи, помилки, крайові випадки |
|
Результат (Постумови) | Отримано відповідь endpoint або зафіксовано помилку |
Інші вимоги | Endpoint викликається планово (наразі 1 раз на добу о 05:00) |
Назва | Отримання та локальне збереження permitions |
| Актори |
|
Передумови |
|
Основний хід подій (дій) |
|
Альтернативні шляхи, помилки, крайові випадки |
|
Результат (Постумови) | Майданчик має локально доступний перелік permitions |
Інші вимоги | Повинна зберігатись попередня версія permitions (за потреби) |
Назва | Валідація структури та цілісності permitions |
| Актори |
|
Передумови |
|
Основний хід подій (дій) |
|
Альтернативні шляхи, помилки, крайові випадки |
|
Результат (Постумови) | Permitons визнані валідними або невалідними |
Інші вимоги | Результат валідації має логуватись |
Назва | Визначення права організатора на оголошення аукціонів |
| Актори |
|
Передумови |
|
Основний хід подій (дій) |
|
Альтернативні шляхи, помилки, крайові випадки |
|
Результат (Постумови) | Організатор може або не може створювати аукціони |
Інші вимоги | Логіка повинна застосовуватись для кожного напрямку окремо |
Назва | Визначення права користувачів на подання заявок |
| Актори |
|
Передумови |
|
Основний хід подій (дій) |
|
Альтернативні шляхи, помилки, крайові випадки |
|
Результат (Постумови) | Учасник може або не може подати заявку |
Інші вимоги | Має узгоджуватись з UI та API |
Назва | Визначення доступу до SP* процедур |
| Актори |
|
Передумови |
|
Основний хід подій (дій) |
|
Альтернативні шляхи, помилки, крайові випадки |
|
Результат (Постумови) | Доступ до SP* процедур дозволено або заборонено |
Інші вимоги |
|
Назва | Визначення доступу до LP* процедур |
| Актори |
|
Передумови |
|
Основний хід подій (дій) |
|
Альтернативні шляхи, помилки, крайові випадки |
|
Результат (Постумови) | Доступ до LP* процедур дозволено або заборонено |
Інші вимоги |
|
Назва | Визначення доступу до реєстру об’єктів оренди |
| Актори |
|
Передумови |
|
Основний хід подій (дій) |
|
Альтернативні шляхи, помилки, крайові випадки |
|
Результат (Постумови) | Доступ до створення об'єктів реєстру дозволено або заборонено |
Інші вимоги |
|
Назва | Керування UI відповідно до permitions |
| Актори |
|
Передумови |
|
Основний хід подій (дій) |
|
Альтернативні шляхи, помилки, крайові випадки |
|
Результат (Постумови) | Користувачі бачать лише дозволений функціонал |
Інші вимоги | UI та API мають бути синхронні |
Назва | Ескалація проблем з permitions |
| Актори |
|
Передумови |
|
Основний хід подій (дій) |
|
Альтернативні шляхи, помилки, крайові випадки |
|
Результат (Постумови) | Причина відсутності permitions з’ясована |
Інші вимоги | Всі звернення мають трасуватись |