Begriff
Authentication
Warum wichtig?
Dieser Begriff ist ein Knoten im SengakujiWorks-Wissensnetz. Nutze Level 0 für die erste Einordnung, Level 1 für Praxis, Level 2 für technische Struktur und Level 3 für Grenzen, Fallstricke und Expertenkontext.
Authentication ist die Frage: "Wer bist du?" Wenn du bei der Bank anrufst, fragen sie nach deinem Geburtsdatum. Das ist Authentication. Im Computer: Login mit Benutzername und Passwort. Der Computer prüft, ob du wirklich der bist, der du vorgibst zu sein.
Es ist nicht zu verwechseln mit Authorization ("Was darfst du?"). Zuerst Ausweis zeigen (Authentication), dann Schlüssel bekommen (Authorization).
Merksatz: Der Prozess, die Identität eines Benutzers oder Systems zu überprüfen (Login).
:level0
Lernbruecke: Authentication beantwortet die Frage: Wer bist du? Authorization beantwortet danach: Was darfst du?
Es gibt drei Wege, zu beweisen, wer du bist (Faktoren):
- Wissen (Etwas, das du weißt): Passwort, PIN. (Unsicher, weil es gestohlen werden kann).
- Besitz (Etwas, das du hast): Handy, EC-Karte, YubiKey.
- Sein (Etwas, das du bist): Fingerabdruck, Gesicht (FaceID), Iris.
Die beste Sicherheit ist eine Kombination: MFA (Multi-Factor Authentication). Also Passwort (Wissen) + Handy-Code (Besitz).
:level1
Praxisbeispiel: Ein Login prüft Passwort oder zweiten Faktor. Danach bekommt der Browser eine Session oder ein Token. Mit diesem Nachweis ruft er geschützte Backend-Endpunkte auf.
1. OAuth & OpenID Connect
Wenn du dich irgendwo mit "Login mit Google" anmeldest, passiert im Hintergrund OAuth / OIDC. Die App (z. B. Spotify) sieht dein Google-Passwort nie. Google sagt Spotify nur: "Ja, das ist Max Mustermann, hier ist sein Token." Das ist viel sicherer, als jedem Forum dein Passwort zu geben.
2. Password Hashing
Gute Systeme speichern dein Passwort niemals im Klartext ("geheim123").
Sie speichern einen Hash (Kryptografischen Fingerabdruck), z. B. a3f89....
Wenn Hacker die Datenbank klauen, sehen sie nur den Hash und können das Passwort nicht direkt lesen (außer durch Brute-Force).
Für die Grundlagen dahinter fuehren Passwort, Hashing (Hash Function), Salt (Cryptography) und Brute Force Attack die wichtigsten Sicherheitsbegriffe zusammen.
:level2Technisch muss Authentication Passwörter sicher prüfen, Sessions schützen, Tokens zeitlich begrenzen und Fehlversuche kontrollieren. Die Antwort darf nicht verraten, welcher Teil der Anmeldung falsch war.
1. State vs. Stateless (Session vs. JWT)
Nachdem du bewiesen hast, wer du bist, muss der Server sich das merken.
- Stateful (Session Cookie): Der Server speichert eine ID (z.B. in Redis):
Session 123 = Max. Er sendet dir als Cookie (HTTP Cookie) "123". Bei jedem Klick suchst der Server die ID in der Datenbank. - Stateless (JWT): Der Server signiert krypto-mathematisch ein JSON:
{"user": "Max"}und gibt dir dieses JWT. Bei jedem Klick schickst du dem Server das dicke Paket. Der Server prüft nur lokal die Signatur (Mathematik) und weiß ohne Datenbank-Zugriff "Das ist Max!". Perfekt zur Skalierung von Microservices.
2. SAML als Enterprise-Standard
Während öffentliche Apps OAuth2 oder OIDC nutzen, verlangen Großkonzerne oft SAML 2.0 (Security Assertion Markup Language). SAML basiert auf altmodischem, riesigem XML. Wenn du im Firmen-Intranet Confluence öffnest, schiebt Confluence dich sofort zum Identity Provider der Firma (Entra ID, Okta). Nach dem Login wirfst du ein signiertes XML-Paket (die "SAML Assertion") zu Confluence zurück. SAML vertauscht oft die Rollen: Nicht die App greift auf die Identity-API zu, sondern der Client "schleppt" das Zertifikat im Browser zur App.
3. FIDO2 und WebAuthn
Das Ende des Passworts? Die FIDO2-Allianz (Apple, Google, Microsoft) baut Hardware-Keys direkt ins Web. Statt ein Passwort an den Server zu senden, registriert dein Smartphone (Secure Enclave) oder YubiKey mit WebAuthn ein asymmetrisches Schlüsselpaar im Browser. Nur der Public Key liegt auf dem Webserver der Bank. Beim Login sendet die Bank eine kryptografische "Challenge" (Gleichung). Dein Smartphone bittet dich um deinen Fingerabdruck, um den Private Key zu entsperren, rechnet die Challenge aus und sendet die Lösung. Kein Phishing möglich, da niemals ein Passwort über das Internet übertragen wird.
Quick-Check
Was ist der Unterschied zu Authorization?
AuthN = "Wer bist du?" (Login). AuthZ = "Darfst du das?" (Rechte). Ein Gast kann authenfiziert sein (er ist drin), aber keine Autorisierung haben (darf nicht in den Tresorraum).Ist FaceID sicher?
Ja, meist sicherer als ein kurzes Passwort. Aber biometrische Daten kann man nicht ändern. Wenn dein Fingerabdruck gestohlen wird (Datenleck), hast du ein Problem für immer.Warum nervt 2FA (Zwei-Faktor) so?
Weil Sicherheit immer Komfort kostet. Aber 2FA blockiert 99,9% aller automatisierten Hacker-Angriffe. Es ist der wichtigste Schutz überhaupt.