Реализован интерфейс согласий
This commit is contained in:
@@ -241,9 +241,14 @@ Pydantic `422` преобразуется в `400 validation_error`, чтобы
|
||||
"auth": {"phone_enabled": true, "password_enabled": false},
|
||||
"operator": {"call_phone": "+74999591007"},
|
||||
"consents": {
|
||||
"personal_data": {"required": true, "document_url": "https://...", "version": "2026-06-10"},
|
||||
"personal_data": {
|
||||
"required": true,
|
||||
"document_url": "https://www.han0107.ru/privacy/persdata-agree-mobile",
|
||||
"privacy_policy_document_url": "https://www.han0107.ru/privacy",
|
||||
"version": "2026-06-10"
|
||||
},
|
||||
"user_agreement": {"required": true, "document_url": "https://...", "version": "2026-06-10"},
|
||||
"marketing": {"required": false, "document_url": null, "version": "2026-06-10"}
|
||||
"marketing": {"required": false, "document_url": "https://www.han0107.ru/privacy/ads-agree", "version": "2026-06-10"}
|
||||
},
|
||||
"attachments": {
|
||||
"allowed_extensions": ["jpg", "jpeg", "png", "webp", "heic", "heif", "pdf"],
|
||||
|
||||
@@ -74,7 +74,7 @@ Auth state machine: `guest → authorizing → bootstrapping → authenticated`;
|
||||
|
||||
### 5.2. Согласия и OTP
|
||||
|
||||
Modal согласий отображает актуальные URL/версии из config. `personal_data` и `user_agreement` обязательны, `marketing` необязателен. После подтверждения intent остаётся в памяти, начинается OIDC PKCE redirect.
|
||||
Modal согласий (макет AuthConsent) показывает три блока. В блоке `personal_data` — две ссылки: `document_url` (согласие на обработку ПД) и `privacy_policy_document_url` (политика ПД из `consent.privacy_policy.document_url`). В блоках `user_agreement` и `marketing` — по одной ссылке из `document_url` (`consent.marketing.document_url` для рекламы). Обязательность берётся из `consent.*.required` (`personal_data`/`user_agreement` обычно обязательны, `marketing` — нет). После подтверждения intent остаётся в памяти, начинается OIDC PKCE redirect.
|
||||
|
||||
OTP вводится на странице/теме Keycloak. В mock mode Keycloak сверяет secret-код; в real mode Keycloak генерирует и локально проверяет OTP, а доставку заказывает в `sms-service` по module-11. Frontend не вызывает `sms-service`/Direct, не получает provider status, service URL/token или mock secret.
|
||||
|
||||
|
||||
Reference in New Issue
Block a user