ЕСОЗ - публічна документація
[auth.ehealth/auth_factors] Change Factor pages
Requirements
- Its separate complex flow
- Create new page "Login New Factor"
- Create new page "Verifying OTP"
- Create new page "Request New Factor page"
- Add input field "factor" + button "next"
- Add button "Resend new OTP"
- Create new page "Approve New Factor page"
- Add input field "otp" + button "Verify OTP"
Specifications
Page 1 - "Login New Factor page"
Design
- Full clone from [auth/sign-in] Login page
Logic
- After sucsessful getting token (Call WS Create Token with parameters = CREATE_2FA_TOKEN), get response, read attribute `response.urgent.next_step` and switching logic:
- REQUEST_OTP - go to page [auth/invite] Verifying OTP page
- In other case (REQUEST_APPS, REQUEST_FACTOR) - view message "Невірний стан користувача для зміни додаткового фактору аутентифікації для входу у систему e-health" & break process
- If WS return error - view message & break process
Page 2 - "Verfying OTP for New Factor page"
Design
- Full clone from [auth/sign-in] Verifying OTP page
Logic on page
- On click button "Next" & "Edit_OTP" not empty
- Call WS Create Token with parameters = AUTHORIZE_OTP
- Get response, read attribute `response.urgent.next_step` and switching logic:
- REQUEST_APPS :
- Extract & save token from response
- Go to next page "Approvals"
- REQUEST_APPS :
- if WS return error - view message & break process
- On click button "Resend_new_OTP" not empty
- Call WS Create Token with parameters = RESEND_OTP
- Extract & save token from response
- Clear "Edit_OTP" field
- if WS return error - view message & break process
- Call WS Create Token with parameters = RESEND_OTP
Page 3 - "Request New Factor page"
Design
- Header label = "Фактор додаткової аутентифікації для входу у систему e-health"
- Input field "Edit_Factor"
- Button "Next" ("Далі")
Logic on page
- On click button "Next" & "Edit_Factor" not empty
- Call WS Request User Factor with parameters `type` = SMS, `factor`=Edit_Factor
- If successful call - go to Page -2 "Approve Factor page"
- if WS return error - view message & break process
Page 4 - "Approve New Factor page"
Design
- Header label = "OTP для підтвердження фактору додаткового аутентифікації входу у систему e-health"
- Input field "Edit_OTP"
- Button "Next" ("Далі")
Logic on page
- On click button "Next" & "Edit_OTP" not empty
- Call WS Approve User Factor with parameters `otp`=Edit_OTP
- If successful call - go to page 5 "Finish"
- if WS return error - view message & break process
Page 5 - "Finish"
Design
???
Logic on page
???
ЕСОЗ - публічна документація