BrowserTools
Werbung
Startseite / Encoder / Basic-Auth-Header-Generator

Basic-Auth-Header-Generator

Erstelle und dekodiere HTTP-Basic-Authentifizierungs-Header aus einem Benutzernamen und einem Passwort, vollständig in deinem Browser.

Basic-Auth-Header-Generator wird geladen… Wenn nichts passiert, aktiviere JavaScript.

Die HTTP-Basic-Authentifizierung ist das einfachste für das Web definierte Anmeldeschema, festgelegt im RFC 7617. Zur Authentifizierung kombiniert ein Client einen Benutzernamen und ein Passwort zu einer einzigen, durch einen Doppelpunkt getrennten Zeichenkette, kodiert diese Zeichenkette in base64 und sendet sie in einem Authorization-Header mit dem vorangestellten Wort Basic. Eine Anfrage an einen geschützten Endpunkt trägt daher einen Header wie Authorization: Basic YWxhZGRpbjpvcGVuc2VzYW1l. Da das Schema in praktisch jedem HTTP-Client, jeder Bibliothek und jedem API-Gateway eingebaut ist, bleibt es eine gängige Wahl für interne Dienste, Skripte, Webhooks und schnelle API-Tests, bei denen ein vollständiger tokenbasierter Ablauf überzogen wäre.

Häufig gestellte Fragen

Werden mein Benutzername und mein Passwort irgendwohin gesendet?
Nein. Sowohl die Kodierung als auch die Dekodierung laufen vollständig in deinem Browser über eingebaute APIs. Die Anmeldedaten, die du eingibst, werden niemals hochgeladen, protokolliert oder an einen Server übertragen. Das Werkzeug funktioniert weiterhin offline, sobald die Seite geladen ist, daher ist es sicher, es während der Entwicklung mit echten Anmeldedaten zu verwenden.
Wie wird ein Basic-auth-Header aufgebaut?
Der Benutzername und das Passwort werden mit einem einzigen Doppelpunkt zu einer Zeichenkette verbunden, zum Beispiel aladdin:opensesame. Diese Zeichenkette wird als UTF-8-Bytes und dann in base64 kodiert und ergibt YWxhZGRpbjpvcGVuc2VzYW1l. Der endgültige Header besteht aus dem Wort Basic, einem Leerzeichen und diesem Token: Authorization: Basic YWxhZGRpbjpvcGVuc2VzYW1l.
Ist die Basic-Authentifizierung sicher?
Basic auth bietet für sich allein keine Vertraulichkeit. Das base64-Token ist trivial umkehrbar, sodass jeder, der es abfängt, das Passwort sofort kennt. Sie ist nur sicher, wenn sie über HTTPS gesendet wird, wo TLS die gesamte Anfrage einschließlich des Headers verschlüsselt. Sende Basic auth niemals über reines HTTP und bevorzuge tokenbasierte Schemata wie Bearer Tokens oder OAuth für alles, was über einfache interne Nutzung hinausgeht.
Was passiert, wenn mein Passwort einen Doppelpunkt enthält?
Nur der erste Doppelpunkt trennt den Benutzernamen vom Passwort, daher darf ein Passwort gefahrlos weitere Doppelpunkte enthalten. Der Benutzername darf jedoch keinen Doppelpunkt enthalten, weil der Server am ersten trennt. Beim Dekodieren trennt dieses Werkzeug ebenfalls am ersten Doppelpunkt und bewahrt alle weiteren als Teil des Passworts.
Behandelt es Nicht-ASCII-Zeichen korrekt?
Ja. Das Werkzeug kodiert den Benutzernamen und das Passwort vor base64 als UTF-8, sodass Buchstaben mit Akzent, nicht lateinische Schriften und Emoji exakt erhalten bleiben. Einfaches Browser-base64 unterstützt nur Latin-1 und würde einen Fehler auslösen oder solche Zeichen beschädigen, daher entspricht dieser UTF-8-sichere Ansatz dem, was konforme HTTP-Clients und -Server gemäß RFC 7617 tun.
Kann ich ein Token dekodieren, das ich bereits habe?
Ja. Wechsle zum Tab Decode und füge entweder ein bloßes base64-Token oder einen vollständigen Authorization-Header ein. Das Werkzeug entfernt die Präfixe Authorization und Basic automatisch, dekodiert den Wert aus base64 und trennt ihn am ersten Doppelpunkt, um den ursprünglichen Benutzernamen und das Passwort anzuzeigen.
Warum schlägt die Dekodierung manchmal fehl oder zeigt keinen Doppelpunkt?
Die Dekodierung schlägt fehl, wenn der eingefügte Wert kein gültiges base64 ist, oft wegen verirrter Leerzeichen, einer abgeschnittenen Kopie oder eines anderen Authentifizierungsschemas wie Bearer. Wenn er sich dekodieren lässt, aber keinen Doppelpunkt enthält, ist das Token wahrscheinlich kein Basic-auth-Anmeldepaar, da das Schema immer eine Zeichenkette benutzer:passwort einbettet.
Wie verwende ich den erzeugten Header mit curl?
Kopiere die vollständige Header-Zeile und übergib sie mit der Option -H, zum Beispiel curl -H "Authorization: Basic YWxhZGRpbjpvcGVuc2VzYW1l" https://api.example.com. Alternativ kann curl den Header mit der Option -u für dich aufbauen: curl -u aladdin:opensesame https://api.example.com liefert dasselbe Ergebnis.

Über Basic-Auth-Header-Generator

Dieser Generator verwandelt einen Benutzernamen und ein Passwort sowohl in den vollständigen Authorization-Header als auch in das bloße base64-Token, jeweils mit einem eigenen Kopierknopf, sodass du den Wert direkt in curl, Postman, einen fetch-Aufruf oder eine Konfigurationsdatei ablegen kannst. Er verwendet einen UTF-8-sicheren Kodierer, was wichtig ist, weil einfaches base64 im Browser standardmäßig nur Latin-1-Zeichen verarbeitet. Wenn dein Benutzername oder Passwort Buchstaben mit Akzent, Emoji oder ein beliebiges Nicht-ASCII-Zeichen enthält, kodiert das Werkzeug die Bytes korrekt, sodass der empfangende Server genau die Anmeldedaten rekonstruiert, die du eingegeben hast. Die umgekehrte Richtung wird ebenfalls unterstützt: Füge ein base64-Token oder einen vollständigen Authorization-Header ein, und das Werkzeug teilt es wieder in den Benutzernamen und das Passwort auf, die es darstellt.

Alles geschieht lokal in deinem Browser. Die Anmeldedaten, die du eingibst, werden niemals hochgeladen, übertragen oder auf einem Server gespeichert, was das Werkzeug für echte Benutzernamen und Passwörter während der Entwicklung und Fehlersuche sicher macht. Allerdings bietet die Basic-Authentifizierung für sich allein keine Vertraulichkeit. Der base64-Schritt ist von jedem umkehrbar, es handelt sich also um Kodierung, nicht um Verschlüsselung. Basic auth sollte immer nur über HTTPS gesendet werden, wo TLS den Header während der Übertragung schützt. Verwende dieses Werkzeug, um Header zum Testen zu erstellen und um Token zu untersuchen, die du erhalten hast, und bewahre Produktionsanmeldedaten in einem ordentlichen Geheimnisspeicher auf, statt sie fest in Skripte zu schreiben.

Das älteste Authentifizierungsschema, das es noch im Web gibt

Die HTTP-Basic-Authentifizierung geht auf die ursprüngliche HTTP/1.0-Spezifikation von 1996 zurück und hat seither im Wesentlichen unverändert überlebt. Ihr Mechanismus ist fast komisch einfach: Nimm einen Benutzernamen und ein Passwort, klebe sie mit einem Doppelpunkt zusammen, kodiere das Ergebnis in base64 und sende es. Es gibt kein Hashing, keinen Nonce, keinen Challenge-Response-Handshake der Art, wie man ihn bei der Digest-Authentifizierung findet. Der base64-Schritt existiert allein dazu, beliebige Anmeldedaten-Bytes sicher in einem HTTP-Header unterzubringen, nicht um irgendetwas zu verbergen.

Genau diese Einfachheit ist der Grund, warum es überall bleibt. Fast jede HTTP-Bibliothek stellt dafür einen einzeiligen Helfer bereit, API-Gateways und Reverse-Proxys unterstützen es nativ, und Entwickler können den Header beim Debuggen von Hand zusammenbauen. Interne Microservices, Überwachungsendpunkte, Paket-Registries und unzählige Altsysteme verlassen sich noch immer darauf, weil es allgemein verstanden wird und keine zusätzliche Infrastruktur erfordert. Der Haken ist, dass die Anmeldedaten bei jeder einzelnen Anfrage mitreisen, sodass die Sicherheit des gesamten Schemas vollständig auf der darunterliegenden Transportschicht ruht.

Die berühmten Beispiel-Anmeldedaten aladdin und opensesame, die im RFC 7617 und in vielen Tutorials auftauchen, sind eine Anspielung auf das Märchen von Ali Baba und den vierzig Räubern, in dem opensesame (Sesam, öffne dich) die Zauberformel ist, die die verborgene Höhle öffnet. Es ist eine passende Metapher für ein Authentifizierungsschema: Sprich das richtige Geheimnis aus, und die Tür schwingt auf. Die Lehre, die das Märchen und das Schema teilen, ist dieselbe, ein gesprochenes oder übertragenes Geheimnis ist nur so sicher wie die Ohren, die vielleicht mithören, weshalb Basic auth strikt in einen HTTPS-Tunnel gehört.

Werbung
Werbung
Werbung