Frage

Hier ist, wie meine Universität führt die Authentifizierung: wir den Benutzer auf eine Website weitergeleitet, sie in ihren Benutzernamen und das Passwort eingeben, dann erhalten sie zurück zu uns mit dem Benutzernamen und ein Login-Schlüssel übergeben in die Query-String umgeleitet. Wenn wir den Benutzer zurück zu erhalten, rufen wir eine gespeicherte Prozedur in der Datenbank der Universität, die den Benutzernamen, Login-Schlüssel nimmt, und die IP-Adresse und sagt uns, ob diese gültig ist.

Ich habe eine Django benutzerdefinierten Authentifizierungs-Backend bekam eingerichtet, um unser Ende all dies handhaben. Macht es einen Unterschied eine oder andere Weise, ob ich es in der Lage machen ein Passwort Argument zu akzeptieren (da wir nicht wirklich ihr Passwort nehmen)? Gerade jetzt, ich habe es so eingerichtet, dass es die Login-Schlüssel als Passwort-Argument. Wäre es gut, schlecht sein, oder auch nicht für mich, dies zu ändern, um dies als sagen zu nehmen, login_key statt als Passwort?

War es hilfreich?

Lösung

Der Django docs sagen:

  

So oder so, authentifizieren sollte überprüfen   die Berechtigungsnachweise es wird, und es sollte   Rückkehr ein User-Objekt, das entspricht   diese Anmeldeinformationen, wenn die Anmeldeinformationen   sind gültig. Wenn sie nicht gültig, es   return None sollte.

Die ‚So oder so‘ bezieht sich auf, ob die authenticate () Methode verwendet einen Benutzername / Passwort-Kombination, oder einfach nur einen Token. Ihr Szenario fällt zwischen den beiden, so würde ich denken, dass die ‚beste‘ Antwort wäre Ihre beglaubigen zu schreiben () einen Benutzernamen und ein Login-Schlüssel zu nehmen, und gibt die richtigen Benutzer oder keine entsprechend.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top