Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Cos SAML
SAML (acronimo di Security Assertion Markup Language) un metodo sicuro di autenticazione basato su XML che permette lo scambio sicuro di informazioni nella comunicazione, oltre che luso del Single Sign On. SAML un servizio del J2EE engine. SAML richiede che la trasmissione dei dati sia sicura a livello trasporto e perci consiglia luso di SSL. Esistono 3 entit che partecipano in una autenticazione SAML: - il sito sorgente che richiede lautenticazione, - la SAML Authority, che convalida le credenziali del richiedente, - il sito destinazione che in base alle credenziali passate, autentica o meno il richiedente. La figura 1 mostra come avviene lautenticazione tramite SAML e lo scambio di informazioni tra le 3 entit. - Il sito che autentica lutente diventa il sito che stabilisce la comunicazione SAML. Il sito sorgente fornisce il sito destinazione di un artefatto (che una dichiarazione di validit dellautenticazione dellutente). - Il sito sorgente fornisce anche un responder che la SAML authorty che dichiara la veridicit delle informazioni dellutente. - La destinazione provvede al controllo dellartefatto tramite il SAML Login Module.
Requisiti
Come prima cosa bisogna controllare che il servizio SAML sia attivo. Per attivare il servizio necessario avere laccesso a Visual Administrator. Lutente che solitamente viene usato per laccesso a Visual Administrator J2EE_Engine. Visual Administrator raggiungibile tramite il seguente path: $drive$:\usr\sap\<SID>\<Central Instance Name>\j2ee\admin\go.bat
E anche possibile fare in modo che il servizio SAML parta automaticamente quanto parte il J2EE_Engine. Per fare ci necessario scegliere il servizio Configuration Adapter, (spostarsi quindi nella finestra a fianco) Configurations, cluster_data, server, cfg, PropertySheet tc~sec~saml~serviceruntime:
Scegliere a questo punto il simbolo per Show detail for the selected node, si apre una finestra Change configuration, Change property entry e mettere always nel campo custom. Il cambiamento richiede il riavvio del server J2EE.
Esempio SAML Parameters PartnersInbound MyPartner Active=true DestinationName=MyPartnerDest SourceID=Hex: FB6E8396EFD983CDBA6AEC1DF95AD2C5E0C3F4AF PartnersOutbound Settings ParameterNameArtifact=SAMLart PermitInsecureConnections=false
Security Provider
Bisogna aggiustare anche lo stack di login. Per fare ci si va nel servizio Security Provider, Policy Configuration, selezionare la tabella Authentication. Devono essere presenti i moduli di login per SAML: SAMLLoginModule e SAMLMappingModule. Il SAMLMappingModule non tra i moduli di autenticazione selezionabili, ma bisogna crearlo. Per farlo spostarsi nella scheda User Managment, Manage Security Store (in basso a destra), in User Store selezionare UME User Store, Add Login Module e inserire la classe che implementa la maniera di autenticazione richiesta.
Destinations
In Destination si inserisce lurl della SAML authority, ossia il modulo che dichiara veritiera lautenticazione. Bisogna fornire un nome per lauthority e il metodo di autenticazione, user e pwd.
Oltre ai servizi citati necessario che i SAPuser J2EE_admin (amministratore del server J2EE) e SAPJSF (utente adibito alle comunicazioni) abbiano entrambi il ruolo SAP_BC_JSF_COMMUNICATION.