Security Assertion Markup Language (SAML) – protokół jednokrotnego logowania oraz autoryzacji, czyli w tym wypadku przekazywania między systemami i aplikacjami informacji o uprawnieniach użytkowników[1]. Jednym z charakterystycznym elementów SAML jest oparcie komunikacji na danych zapisanych w XML[2].
Standard SAML 1.0 został utworzony w 2002 roku w ramach organizacji OASIS (Organization for the Advancement of Structured Information Standards), a rok później powstała wersja 1.1 protokołu[3]. Wersja 2.0 opiera się na doświadczeniach współpracy z organizacją Liberty Alliance i jej Identity Federation Framework (ID-FF). Nowa wersja wprowadziła zmiany dotyczące m.in. prywatności i poufności, wprowadzając oficjalną możliwość użycia pseudo losowych identyfikatorów czy szyfrowania fragmentów poufnych danych[2].
Specyfikacja SAML-a wyróżnia trzy główne role: Podmiot (the principal), Dostawca Tożsamości (the Identity Provider, IdP) oraz Dostawca Treści (the Service Provider, SP). Dostawca Treści wymaga potwierdzenia tożsamości Podmiotu. Za potwierdzenie tożsamości odpowiada Dostawca Tożsamości[2].
Przykładowy scenariusz działania SAML 2.0: