DRAFT
Загальні вимоги
Перелік методів аутентифікації
OTP
Offline
Third person - вказується ідентифікатор персони, яка буде авторизувати дії від імени персони, для якої вона додається як метод авторизації
Така персона має бути наявною та активною у системі
Така персона має бути старшою за 14 років
Такий метод аутентифікації не може бути основним для персони, старшої за 14 років
Через ендпоинты Post/person/id/auth_method/request and Patch/person/id/auth_method/request є можливість додавати, змінювати та видаляти методи автентифікації персони.
Удалять:
{ "action": "delete", "authentication_methods": { "id": "057413fb-2c2e-4f33-b2d6-433469212744" } }
Можно удалять аус метод только с типом third_person
Если персоне < 14 и количество аус методов =1, то удалить его нельзя
Если удаляется аус метод который главный (is_primary = true), то переставить этот флаг на тот аус метод, который последний добавили
Добавлять:
{ "action": "insert", "authentication_methods": { "type": "third_person", "value": "d12888c0-1159-4296-8f03-a592c136f673", "alias": "roksolana" } }
Если передаем тип = third person, то просто добавляем
Если передаем OTP или OFFLINE, то добавляется телефон, добавление подтверждается прошлым методом аутентификации и прошлый становится неактивный
Изменять:
{ "action": "insert", "authentication_methods": { "id": "057413fb-2c2e-4f33-b2d6-433469212744", "alias": "roksolana", "is_primary": "true" } }
Если добавляем аус метод с
"is_primary": "true"
, то тот который был главным подтверждаем и потом становится is_primary = false