crittografia SAML2

1

Sono nuovo di SAML2 e ho una domanda. Abbiamo un cliente che sta dicendo che vuole crittografare i dati dell'utente che ci stanno inviando. Ecco una panoramica di come ho implementato questo oggi:

L'utente accede al proprio sito Intranet e fa clic su un collegamento alla nostra azienda. Utilizzano PingFederate Single Sign-On (SSO) per generare la richiesta SAML2. Mandano il nome utente nella sezione Subject.NameId . Quando riceviamo la richiesta SAML2, decifriamo le informazioni inviate utilizzando il loro certificato.

Il cambiamento che vogliono è crittografare la sezione usando la nostra chiave e decifreremo questa sezione dalla nostra parte. Questo viene utilizzato solo per un processo SSO unilaterale e non è necessario inviare nulla a loro.

Volevo solo raggiungere e vedere se questo è il modo corretto di fare SAML2 o no. Il modo in cui l'ho impostato è che guardo la richiesta SAML2 in arrivo e determini quale certificato utilizzare sul nostro server e utilizzi ciò che il cliente ci ha dato. Un'altra cosa che ha detto è che il modo in cui abbiamo implementato questo non è in realtà SAML2.

    
posta scott0912 13.01.2014 - 19:44
fonte

1 risposta

1

Ci sono alcune opzioni qui.

Potresti facilmente farli cifrare l'asserzione stessa, che è supportata dalla maggior parte delle soluzioni commerciali. Ciò porta a un interop migliore / più stabile, ma crittograferà l'intera asserzione non solo gli attributi dati. Di solito è un'operazione asimmetrica con loro usando la tua chiave pubblica.

Un'altra opzione è usare un EncryptedAttribute, che non è qualcosa che ho visto implementato in molti posti, ma consente di specificare la crittografia su base attributo per attributo ed è supportato dalla specifica SAML.

L'ultima opzione è crittografarla fuori banda e lasciarla alla tua applicazione per decrittografarla manualmente. Questo non è definito da alcuna specifica ed è lasciato al tuo progetto e implementazione. Eviterei questo per le solite ragioni "non rotolare".

Penso che queste opzioni siano ordinate nella complessità minima, IMO.

    
risposta data 13.01.2014 - 19:56
fonte

Leggi altre domande sui tag