2011-11-26 14 views
15

Czy konieczne jest szyfrowanie żądania SAML, jeśli podpisuję je przy użyciu mojego klucza prywatnego i wysyłam je przez SSL? A może lepiej byłoby podpisać go przy użyciu mojego klucza prywatnego, zaszyfrować go za pomocą klucza publicznego dostawcy tożsamości ORAZ przesłać go przez SSL?Czy zaleca się podpisywanie i szyfrowanie SAML I używanie SSL?

Odpowiedz

37

Zapytanie/zapytanie o asercję SAML zwykle nie zawiera zbyt wielu prywatnych danych, a samo żądanie zwykle nie jest używane w późniejszym czasie, więc nie ma potrzeby szyfrowania samego żądania SAML. Podpisanie go umożliwi odbiorcy sprawdzenie, czy zawartość nie została zmieniona podczas tranzytu, a jego tranzyt przez SSL zapewni prywatność podczas transmisji. Szyfrowanie żądania w tej sytuacji jest prawdopodobnie przesadą.

Odpowiedź asercji SAML jest jednak zupełnie innym zwierzęciem. Odpowiedź SAML zawierająca oświadczenia lub zapewnienia prawdopodobnie zawiera prywatne dane. W zależności od tego, w jaki sposób te asercje są używane w systemie, asercje mogą być przekazywane między różnymi stronami, niektóre z których klucze mają klucze do odszyfrowania zawartości (ponieważ mają relację zaufania z dostawcą SAML), a niektóre nie . Twierdzenia SAML mogą być przechowywane w pamięci podręcznej lub w bazie danych, więc naprawdę nie wiesz, kto będzie je przeglądał w przyszłości.

Jeśli odpowiedź SAML zawiera roszczenia i zapewnienia, które zawierają prywatne dane, a odbiorca odpowiedzi będzie trzymał asercję SAML przez czas nieokreślony lub przekazywanie asercji SAML przez pośredniczące podmioty, którym nie ufasz, to tak, asercje SAML powinny być zaszyfrowane, a odpowiedź podpisana, niezależnie od tego, czy jest przesyłana przez SSL, czy nie. Szyfrowanie ma na celu ochronę prywatności danych po ich dotarciu do drugiego końca rury SSL.

+3

"Szyfrowanie polega na ochronie prywatności danych po ich dostarczeniu na drugim końcu rury SSL." To mi wyjaśniło. Dziękuję Ci! – BernardMarx

2

I drugim końcem rury SSL jest przeglądarka. Jest jedna rura od IdP do przeglądarki, a druga od przeglądarki do Usługodawcy. Jeśli asercja nie jest szyfrowana, asercja byłaby dostępna dla każdego użytkownika przeglądarki. Osoba atakująca może użyć niezaszyfrowanego identyfikatora nazwy w jakimś ataku na przyszłe dokumenty SAML i interakcje.

+3

Ale czy osoba atakująca jest właścicielem przeglądarki, której już nie straciliśmy? – sbc