repoze.who.plugins.digestauth este plugin repoze.who de punere în aplicare Digest Autentificarea Acces HTTP ca pe-RFC 2617:
& Nbsp; http: //tools.ietf.org/html/rfc2617
Acesta oferă suport bun pentru protocol, deoarece este de obicei folosit în sălbăticie:
- Ambele qop = "autorizare" și qop = modurile "auth-int"
- Modul compatibilitate pentru clientii vechi
- Verificarea client nonce-count
- Următoarea generație-nonce prin autentificare-Info antetul
Următoarele caracteristici ale protocolului sunt rareori susținute de clienți HTTP și, prin urmare, nu au fost încă puse în aplicare:
- MD5-sess, sau orice algoritm hash, altele decât MD5
- Autentificarea reciprocă prin antetul de autentificare-Info
Configurare
Configurarea plugin Digest-auth se poate face de la standard fișierul de configurare repoze.who astfel:
[Plugin: digestauth]
utilizare = repoze.who.plugins.digestauth: make_plugin
tărâm = MyRealm
get_pwdhash = mymodule: get_pwdhash
Următoarele opțiuni de configurare sunt disponibile:
- Tărâm: șirul tărâm; incluse textual în antet provocare
- Domeniul: șirul domeniu; incluse textual în antet provocare
- Qop: calitatea dorită de protecție ("aut" sau "auth-int")
- Get_password: punctat numele unui apel invers pentru a obține parola utilizatorului
- Get_pwdhash: punctat numele unui apel invers pentru a obține parola hash utilizatorului
- Nonce_manager: punctat numele de o clasă de a utiliza pentru gestionarea nonce
autentificare
Pentru a autentifica un utilizator prin intermediul Digest Auth, acest plugin are nevoie de acces la nici parola brut sau de "hash parola", care este MD5 buletin de numele de utilizator, parola și autentificare tărâmul lor:
def calculate_pwdhash (nume utilizator, parola, tărâm):
. & Nbsp; a reveni md5 ("% s:% s:% s"% (username, tărâm, parola)) hexdigest ()
Trebuie să furnizați funcție de apel invers "get_password" sau "get_pwdhash" pentru DigestAuthPlugin.
Nonce de Management
Securitatea Digest Authentication acces depinde în mod esențial de generația sigură și managent de nonces criptografice. Pentru a preveni atacurile de reluare serverul trebuie să respingă cererile care au un nonce repetate.
Detaliile de management nonce au fost extrase într-o interfață separat, definit de repoze.who.plugins.digestauth.noncemanager: clasa NonceManager. Punerea în aplicare implicit folosește jetoane HMAC-au semnat și un cache în memorie a numărului de nonce vazut recent. Dacă aveți nevoi speciale mai mult s-ar putea dori să pună în aplicare propriul subclasă NonceManager
Ce este nou în această versiune:.
- Actualizare licență pentru MPL 2.0.
Cerințe :
- Python
Comentariile nu a fost găsit