Junior
Kas ir pamatautentifikācija (Basic Auth)?
sobes.tech AI
Atbilde no AI
Pamatautentifikācija — tas ir vienkāršākais HTTP klienta autentifikācijas veids, kas noteikts RFC 7617 standartā:
Darba princips:
- Klients nosūta HTTP pieprasījumu aizsargātajam resursam:
- Serveris atgriež atbildi ar statusu
401 Unauthorizedun galveniWWW-Authenticate: Basic realm="<realm>", kur<realm>ir aizsargātās teritorijas (resursa) teksta apraksts: - Pārlūkprogramma vai klienta lietotne parāda dialoglodziņu lietotājvārda un paroles ievadei:
- Klients kodē lietotājvārdu un paroli
username:passwordformātā: - Iegūto rindu kodē ar Base64:
- Klients atkārtoti sūta pieprasījumu, pievienojot galveni
Authorization: Basic <base64_encoded_string>, kur<base64_encoded_string>ir Base64 kodēta rinda: - Serveris dekodē Base64 rindu, sadala lietotājvārdu un paroli un pārbauda datus:
- Ja dati ir pareizi, serveris nosūta pieprasīto resursu. Pretējā gadījumā — atkal atgriež
401 Unauthorized:
Authorization galvenes piemērs:
Authorization: Basic YWxhZGRpbjpvcGVuc2VzYW1l
kur YWxhZGRpbjpvcGVuc2VzYW1l ir aladdin:opensesame rindiņas Base64 kodēta versija:
Īpatnības:
- Vienkāršība: Viegls realizēt gan klienta, gan servera pusē:
- Nepieciešamība: Dati tiek pārsūtīti Base64 kodētā veidā, bet nav šifrēti. Base64 ir kodēšana, ne šifrēšana. Pārlūkošanas laikā dati viegli dekodējami. Tikai ar HTTPS tas nodrošina minimālo drošības līmeni.
- Stāvoklis: Nepieciešams katram pieprasījumam
Authorizationgalvene, jo tas nesaglabā stāvokli serverī starp pieprasījumiem (bez stateless). - Lietotāja pieredze: Pārlūkprogrammas dialoglodziņš ir mazāk elastīgs un lietotājam draudzīgāks nekā pielāgotas autentifikācijas formas:
Izmantošana: visbiežāk tiek izmantots API aizsardzībai, statiskiem resursiem vai vienkāršām iekšējām sistēmām, kur drošība nav kritiska, vai jāizmanto kopā ar SSL/TLS (HTTPS).