Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  1. Система повинна перевіряти цілісність структури permissions, зокрема:

    • наявність ключа permissions

    • наявність секцій procedures, jobber, registry

    • допустимі значення (procedure, bids, object)

  2. У разі виявлення невалідної структури необхідно передати інформацію Prozorro.Sale, наприклад, через запит в Slack Workflow

Доступ до процедур

  1. Система повинна Майданчик має дозволяти оголошення аукціонів організаторами, якщо permissions.procedures.<procedure_name> містить "procedure"Система
  2. повинна Майданчик має дозволяти подання заявок учасниками, якщо permissions.procedures.<procedure_name> містить "bids"
  3. За відсутності відповідного значення permissions функціональність повинна бути недоступною як на UI, бо вона буде недоступна і на API рівні.

Доступ до дій з Реєстром об’єктів оренди

  1. Система повинна Майданчик має дозволяти:

    1. Створення Об'єкту оренди, якщо: permissions.registry.object містить "object"

    2. Створення Дії до об'єкту оренди, якщо: permissions.registry.action містить "object"
    3. Створення Заяв до об'єкту оренди, якщо: permissions.registry.lease_request містить "object"

...

Доступ до створення Інформаційних повідомлень, контрактів, об'єктів, викупу Малої приватизації 

...

Майданчик має дозволяти:

  • Створення Об'єкту Малої приватизації, якщо: permissions.registry.asset

...

  • містить "object"

  • Створення Інформаційного повідомлення Малої приватизації, якщо: permissions.jobber.announcement

...

  • містить "object"
  • Створення Викупу Малої приватизації, якщо: permissions.jobber.redemption

...

  • містить "object"

В разі відсутності

...

у Майданчика permissions.jobber.announcement

...

"object", організатор

...

НЕ може створити

...

Інформаційне Повідомлення та, відповідно

...

, не відбудеться автоматичного створення процедури Приватизації

Доступ до створення Інформаційних повідомлень, контрактів, об'єктів, викупу Великої приватизації 

...

Майданчик має дозволяти:

  • Створення Об'єкту

...

  • Великої приватизації, якщо: permissions.registry.large_asset

...

  • містить "object"

  • Створення

...

  • Інформаційного повідомлення

...

  • Великої приватизації, якщо: permissions.jobber.large_announcement

...

  • містить "object"
  • Створення Викупу

...

  • Великої приватизації, якщо: permissions.jobber.large_redemption

...

  • містить "object"

В разі відсутності : permissions.jobber.large_

...

announcement  "object", організатор не може створити

...

Інформаційне Повідомлення та, відповідно, не буде

...

автоматичного створення процедури Приватизації

UI та відображення

  1. UI майданчика повинен динамічно відображати або приховувати функціональність відповідно до permissions.
  2. Користувачі не повинні бачити дій, які їм недоступні згідно permissions .

    UI та API повинні використовувати одну й ту саму логіку перевірки permissions

    Майданчика

Обробка змін і відсутніх permissions

У разі

...

неочікуваної зміни permissions

...

Майданчик повинен зафіксувати інцидент та менеджмент Майданчика повинен ініціювати звернення через Slack WF (“Приватні запити”)

...

Нефункціональні вимоги

  • Обробка permissions не повинна впливати на продуктивність UI

...

...

  • Логіка permissions повинна бути розширюваною для нових напрямків без зміни існуючих UC

...

Вимоги до помилок і стабільності

У разі недоступності endpoint:

  • використовується остання валідна версія permissions

...

  • , яка має локально зберігатись на стороні Майданчика

  • користувачі не отримують помилок UI

...

Система не повинна надавати нові доступи без

...

наявності відповідних permissions

...

в endpoint

UseCases

...

Use Case 1. Отримання permissions з системного endpoint

...