Přejít na obsah
Skip to main content

Požadavek change-password

Účel a dopady​

Změní přístupové heslo uživatele – vlastního, nebo (jen r_admin) libovolného jiného.

Dostupnost, kontext, oprávnění apod.​

  • Bez id (nebo s id rovným vlastnímu): změna vlastního hesla, vyžaduje potvrzení současným heslem (old).
  • S id jiného uživatele: jen r_admin; neúspěšný pokus se navíc zaznamená do serverového logu – v dosavadní dokumentaci nezmíněno.

XML požadavek (syntax + popis)​

<request>
<change-password
id="{number}"
old="{string}"
new="{string}"
hash="{bool}"
/>
</request>

Parametry a pravidla (atributy, potomci)​

  • id - ID uživatele, jehož heslo se mění. (typ: number; nepovinný; výchozí: ID přihlášeného uživatele)
  • old - Současné heslo pro potvrzení. (typ: string; povinné jen při změně vlastního hesla – u administrátorské změny cizího hesla se vůbec nekontroluje a lze vynechat)
  • new - Nové heslo. (typ: string; povinný)
  • hash - Je-li "true", new obsahuje již vypočtený hash hesla (hexadecimálně, s kontrolovanou délkou), ne text hesla. (typ: bool; nepovinný; výchozí: false)

Závislosti​

  • old se ověřuje (porovnáním hashe s uloženým heslem) jen tehdy, je-li cílový uživatel shodný s přihlášeným. Při administrátorské změně cizího hesla se old ignoruje.

Příklady požadavku​

(Zatím bez ověřeného příkladu.)

Zpracování a vedlejší účinky​

Neúspěšný pokus o změnu cizího hesla bez r_admin se loguje na server (log zpráva 1002108) i tehdy, když samotná odpověď klientovi je jen běžná chyba oprávnění.

XML odpověď (syntax + popis)​

<response>
<change-password
type="ok|error"
detail="{string}"
/>
</response>

Příklady odpovědi​

(Zatím bez ověřeného příkladu.)

Chyby a reakce​

  • type="error" detail="Nerozpoznane ID uzivatele" – id se nepodařilo převést na číslo.
  • Nedostatečné oprávnění (cizí id bez r_admin) má odpověď <change-password status="error" detail="Nemate patricna opravneni"/>.
  • type="error" detail="Nespravne puvodni heslo" – old neodpovídá aktuálnímu heslu (jen při změně vlastního hesla).
  • type="error" detail="Pri provadeni doslo k chybe" – selhání samotné změny; tato větev není sebeuzavírající a může nést vnořené error.

Pozor: chyba nedostatečného oprávnění používá atribut status, ostatní chyby požadavku atribut type.

Související požadavky​

  • login – přihlášení novým heslem.