Vai al contenuto
🛠️ToolsShed

HTTP Basic Auth Encoder

Codifica e decodifica le credenziali HTTP Basic Authentication. Genera il valore dell'intestazione Authorization da nome utente e password.

Informazioni sullo strumento

HTTP Basic Auth Encoder costruisce e legge il valore dell'intestazione Authorization: Basic, che non è altro che la codifica in base64 di un nome utente e una password uniti dai due punti (username:password). Risolve il problema quotidiano di dover assemblare o decodificare a mano quell'intestazione quando si lavora con le API HTTP.

Per codificare, inserisci un nome utente e una password e lo strumento restituisce il valore dell'intestazione pronto all'uso; per decodificare, incolla un'intestazione Basic esistente e viene scomposta di nuovo nelle credenziali originali. È comodo per testare le API, preparare richieste con curl o Postman e fare il debug delle risposte 401 Unauthorized in cui devi verificare cosa è stato effettivamente inviato.

Tieni presente che il base64 dell'autenticazione Basic è solo codifica, non crittografia, quindi chiunque lo intercetti può leggere le credenziali. Per questo motivo usalo esclusivamente su HTTPS. Qui tutto viene eseguito localmente nel tuo browser e nulla di ciò che digiti viene mai inviato da nessuna parte.

Domande Frequenti

Implementazione del Codice

import base64

def encode_basic_auth(username: str, password: str) -> str:
    credentials = f"{username}:{password}"
    encoded = base64.b64encode(credentials.encode("utf-8")).decode("utf-8")
    return f"Basic {encoded}"

def decode_basic_auth(header_value: str) -> tuple[str, str]:
    b64 = header_value.removeprefix("Basic ").strip()
    decoded = base64.b64decode(b64).decode("utf-8")
    username, _, password = decoded.partition(":")
    return username, password

header = encode_basic_auth("admin", "secret")
print(header)  # Basic YWRtaW46c2VjcmV0

user, pwd = decode_basic_auth(header)
print(f"Username: {user}, Password: {pwd}")

Comments & Feedback

Comments are powered by Giscus. Sign in with GitHub to leave a comment.