Simple Authentication and Security Layer
# Simple Authentication and Security Layer

Simple Authentication and Security Layer (SASL) è un framework software per autenticazione e sicurezza nei protocolli Internet. Disaccoppia i meccanismi di autenticazione dai protocolli applicativi, consentendo, in teoria, di utilizzare qualunque meccanismo di autenticazione supportato da SASL su qualunque protocollo applicativo che utilizza SASL. I meccanismi di autenticazione possono anche supportare la proxy authorization, che consente ad un utente di assumere l'identità di un altro. Inoltre sono forniti anche layer di sicurezza che offrono servizi di integrità dei dati e confidenzialità dei dati. I protocolli applicativi che supportano SASL solitamente supportano anche Transport Layer Security (TLS).

## Autenticazione SASL

I meccanismi di autenticazione SASL implementano una serie di sfide (challenges) e risposte (responses). Alcuni meccanismi definiti sono:

* EXTERNAL, in cui l'autenticazione è implicita nel contesto (per esempio, nei protocolli che già utilizzano IPsec o TLS)
* ANONYMOUS, per accessi guest non autenticati
* PLAIN, per gli accessi in testo chiaro
* OTP, un meccanismo one-time password. (OTP è stato reso obsoleto da SKEY)
* SKEY, meccanismo S/KEY.
* CRAM-MD5, un semplice schema challenge-response basato su HMAC-MD5.
* DIGEST-MD5 (storico), meccanismo challenge-response compatibile parzialmente con HTTP Digest basato su MD5.
* SCRAM (RFC 5802), schema moderno challenge-response con supporto al binding del canale
* NTLM, schema di autenticazione NT LAN Manager
* GSSAPI, per Kerberos V5 authentication attraverso il GSSAPI.
* BROWSERID-AES128, per Mozilla Persona authentication
* EAP-AES128, per GSS EAP authentication
* GateKeeper (& GateKeeperPassport), meccanismo challenge-response sviluppato da Microsoft per MSN Chat

Il gruppo di meccanismi GS2 supportano arbitrariamente GSS-API in SASL. Standardizzato come RFC 5801.

