710 Stimmen

Authentifizierung versus Autorisierung

Was ist der Unterschied bei Webanwendungen? Bitte kurz zusammengefasst.

Ich sehe die Abkürzung "auth" oft. Steht sie für authentifizierung oder authorisierung? Oder beides?

83 Stimmen

Bitte denken Sie daran: Authentication überprüft Anmeldeinformationen, Autorisierung überprüft Berechtigungen.

1 Stimmen

Cross-Site-Duplikat: serverfault.com/q/57077

1 Stimmen

Kürzlich habe ich für die Abkürzungen authn für Authentifizierung und authz für Autorisierung gesehen.

15voto

Rohit Ailani Punkte 880

Ich habe versucht, ein Bild zu erstellen, um dies in einfachen Worten zu erklären

1) Authentifizierung bedeutet "Bist du wirklich, wer du vorgibst zu sein?"

2) Autorisierung bedeutet "Solltest du in der Lage sein, das zu tun, was du versuchst zu tun?".

Dies wird auch im untenstehenden Bild beschrieben.

Bildbeschreibung hier eingeben

Ich habe versucht, es in bestmöglicher Weise zu erklären und ein Bild davon erstellt.

5voto

Jakub Truhlář Punkte 18280

Authentifizierung ist der Prozess zur Überprüfung der behaupteten Identität.

  • z.B. Benutzername/Passwort

Normalerweise gefolgt von Autorisierung, was die Genehmigung bedeutet, dass man dies und jenes tun kann.

  • z.B. Berechtigungen

4voto

Sovichea Cheth Punkte 137

Authentifizierung ist der Prozess zur Überprüfung Ihres Anmeldebenutzernamens und Passworts.

Autorisierung ist der Prozess zur Überprüfung, ob Sie auf etwas zugreifen können.

4 Stimmen

Diese "Antwort" fügt nichts zu den bereits gegebenen Antworten hinzu.

4voto

Boobalan Punkte 765

Erweiterung zu @Kerreks Antwort;

Authentifizierung ist eine verallgemeinerte Form (Alle Mitarbeiter können sich am Gerät anmelden)

Autorisierung ist eine spezialisierte Form (Aber nur der Administrator kann die Anwendung auf dem Gerät installieren/deinstallieren)

3 Stimmen

Das Wort "can" bezieht sich nur auf Autorisierung. Authentifizierung hat wenig oder nichts mit dem Einloggen zu tun. Ich könnte sehr wohl authentifizieren, dass du Boobalan bist, auf viele Arten (nicht nur Benutzername/Passwort). Sobald ich dich authentifiziert habe und weiß, wer du bist, könnte ich dir sehr wohl die Autorisierung verweigern, dich einzuloggen oder irgendetwas auf meiner Seite zu tun. Du bist authentifiziert, aber du kannst nichts tun. Es ist verwirrend und falsch das Wort "can" zu verwenden, wenn man über Authentifizierung spricht.

3voto

jabacchetta Punkte 36054

Definitionen

Authentifizierung - Sind Sie die Person, die Sie vorgeben zu sein?

Autorisierung - Sind Sie berechtigt, alles zu tun, was Sie versuchen zu tun?

Beispiel

Ein Web-App verwendet Google-Anmeldung. Nachdem sich ein Benutzer erfolgreich angemeldet hat, sendet Google zurück:

  1. Ein JWT-Token. Dies kann validiert und decodiert werden, um Authentifizierungs-Informationen zu erhalten. Ist das Token von Google signiert? Welcher ist der Name und die E-Mail des Benutzers?
  2. Ein Zugriffstoken. Dies autorisiert die Web-App, im Namen des Benutzers auf Google-APIs zuzugreifen. Kann die App beispielsweise auf die Google Kalender-Ereignisse des Benutzers zugreifen? Diese Berechtigungen hängen von den angeforderten Scopes ab und davon, ob der Benutzer dies genehmigt hat.

Zusätzlich:

Das Unternehmen kann ein Admin-Dashboard haben, mit dem der Kundensupport die Benutzer des Unternehmens verwalten kann. Anstatt eine benutzerdefinierte Anmeldelösung bereitzustellen, mit der der Kundensupport auf dieses Dashboard zugreifen könnte, verwendet das Unternehmen Google-Anmeldung.

Das JWT-Token (das aus dem Google-Anmeldeprozess stammt) wird an den Autorisierungsserver des Unternehmens gesendet, um herauszufinden, ob der Benutzer über ein G Suite-Konto mit der gehosteten Domain des Unternehmens verfügt (email@firma.com). Und falls ja, sind sie Mitglied der Google-Gruppe des Unternehmens, die für den Kundensupport erstellt wurde? Wenn ja, können wir sie als authentifiziert betrachten.

Der Autorisierungsserver des Unternehmens sendet dann der Dashboard-App ein Zugriffstoken. Mit diesem Zugriffstoken können autorisierte Anfragen an den Ressourcenserver des Unternehmens gestellt werden (z.B. die Möglichkeit, eine GET-Anfrage an einen Endpunkt zu senden, der alle Benutzer des Unternehmens zurückgibt).

0 Stimmen

Dies ist eine sehr informative Antwort, die technische Aspekte abdeckt. Danke!

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X