POST/api/auth/reset-password
Huweka upya nenosiri kwa kutumia Reset-Token halali.
`POST /api/auth/reset-password` huweka upya nenosiri kwa kutumia Reset-Token halali. Njia (route) hii haihitaji kuingia kwenye akaunti kulikopo tayari, kwa sababu imekusudiwa hasa watumiaji ambao hawawezi tena kutumia nenosiri lao la awali. Katika mwili wa ombi (request body) hutumwa `token` na `password`. Tokeni hutoka kwenye barua pepe ya kuweka upya iliyotumwa awali; nenosiri jipya lazima likidhi mahitaji ya chini yanayotumika upande wa seva. Wito huu si idempotent. Baada ya kuweka upya kwa mafanikio, tokeni iliyotumika imekwisha kutumika, yaani haikusudiwi tena kwa kubadilisha nenosiri mara nyingine. Kwa hiyo client hapaswi kurudia ombi lililokatizwa kwa njia isiyo wazi katika mzunguko wa haraka. Badala yake, inapaswa kuonyesha matokeo na, ikihitajika, kumruhusu mtumiaji kuanzisha mchakato mpya wa kuweka upya kupitia kipengele cha Forgot-Password. Tokeni isiyo halali, iliyoisha muda wake au iliyokwisha kutumika, pamoja na nenosiri lisilokidhi mahitaji ya chini, husababisha `400 VALIDATION_ERROR`. Ujumbe wa hitilafu wa umma haupaswi kufichua maelezo ya ziada ya akaunti. Tokeni na nenosiri jipya hazipaswi kuonekana kwenye vigezo vya URL, zana za uchambuzi, kumbukumbu (logs) za umma wala picha za skrini za msaada. Ombi hili linafaa kuwa tu ndani ya mtiririko wa fomu uliolindwa kwa HTTPS. Jibu la mafanikio ni `{"ok":true}`. Linathibitisha kwamba nenosiri limebadilishwa, si kwamba mtumiaji ameingia upya kiotomatiki. Baada ya kuweka upya, mtumiaji anapaswa kuingia kwa kawaida kwa kutumia nenosiri jipya. Vipindi (Sessions) vilivyopo vinapaswa kushughulikiwa kulingana na mantiki halisi ya backend; nyaraka hazipaswi kudai kwamba vifaa vyote vimetolewa nje ya akaunti kwa jumla ikiwa hilo halijathibitishwa. Jaribio la moja kwa moja (live) lililothibitishwa linajumuisha kesi hasi yenye tokeni isiyo halali na hali inayotarajiwa 400. Kuweka upya halisi kwa mafanikio hakukufanywa kando kwa uthibitisho huu kwa kutumia tokeni ya uzalishaji. Maandishi lazima yadumishe kikomo hiki waziwazi na hayapaswi kudai mafanikio ya End-to-End kutokana na kufanana na Login au Forgot Password.
Uthibitishaji na ulinzi
Hakuna uthibitishaji unaohitajika
Idempotent: Hapana
Vigezo
token(body, string, inahitajika)— Tokeni ya kuweka upya (Reset-Token) kutoka kwenye barua pepepassword(body, string, inahitajika)— Nenosiri jipyaMfano wa ombi (request)
{"token":"<Tokeni kutoka barua pepe ya kuweka upya nenosiri>","password":"NenosiriJipyaSalama!"}Mfano wa jibu (response)
{"ok":true}Misimbo ya hitilafu
400 VALIDATION_ERROR — Tokeni si halali, imeisha muda wake, au nenosiri halikidhi mahitaji ya chini.Uthibitisho wa jaribio la moja kwa moja
Kesi hasi (400, tokeni si halali) imethibitishwa moja kwa moja (live); kesi ya mafanikio inafanana kimitambo na forgot-password/login, na haikupitiwa kando kwa Reset-Token halisi.