sviluppatori@openspcoop.org
<prev [Datenext>
<prev [Threadnext>

[OpenSPCoop-Dev] Versione "refactored" d

To: <sviluppatori@openspcoop.org>
Subject: [OpenSPCoop-Dev] Versione "refactored" di WSSReceiver e nuovomodulo di autorizzazione
From: "Montebove Luciano" <L.Montebove@finsiel.it>
Date: Thu, 18 May 2006 18:53:34 +0200
List-archive: </pipermail/sviluppatori>
List-help: <mailto:sviluppatori-request@openspcoop.org?subject=help>
List-id: sviluppatori.openspcoop.org
List-post: <mailto:sviluppatori@openspcoop.org>
List-subscribe: <http://www.openspcoop.org/mailman/listinfo/sviluppatori>,<mailto:sviluppatori-request@openspcoop.org?subject=subscribe>
List-unsubscribe: <http://www.openspcoop.org/mailman/listinfo/sviluppatori>,<mailto:sviluppatori-request@openspcoop.org?subject=unsubscribe>
Reply-to: sviluppatori@openspcoop.org
Thread-index: AcZ46hsonNKcggldRKyDX7GFdieW1ABmueSgAAPKguA=
Thread-topic: Versione "refactored" di WSSReceiver e nuovo modulo diautorizzazione
 
Ho aggiunto una gestione minimale delle autorizzazioni di accesso ai servizi 
basata sul soggetto che firma la richiesta.
Oltre a WSSReceiver ho aggiunto nel package org.openspcoop.wssecurity 
l'interfaccia Authorization e le classi AuthorizationOKDemo e 
AuthorizationKODemo che allego.

La classe di autorizzazione deve essere realizzata dall'utilizzatore della 
porta implementando l'interfaccia org.openspcoop.wssecurity.Authorization ed il 
suo nome definito con il parametro "authorizationClass" nella sezione 
WS-Security in questo modo:
      <ws-security>
         <request_flow>
....
            <parameter name="authorizationClass"
                       value="org.openspcoop.wssecurity.AuthorizationOKDemo"/>

Le due classi AuthorizationOKDemo e AuthorizationKODemo sono delle 
implementazioni vuote che rispettivamente concedono e negano sempre l'accesso 
al servizio.

L'interfaccia del metodo di autorizzazione per ora è questa:
public boolean authorize(String principal, String servizio, String azione)

Si potrebbe pensare anche ad una versione più forte che comprenda anche il 
soggetto della busta di e-gov per verificare che sia legato in qualche modo al 
principal del certificato di firma. Se vi piace questa possibilità si può 
aggiungere.

P.S.
Le parti da firmare comprendono anche il Timestamp quindi il parametro 
signatureParts dovrebbe essere sempre così:
<parameter name="signatureParts" 
value="{Content}{http://schemas.xmlsoap.org/soap/envelope/}Body;
                       
{Content}{http://www.cnipa.it/schemas/2003/eGovIT/Busta1_0/}Intestazione;
                       
{Content}{http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd}Timestamp;"/>

Ciao

Luciano

Attachment: WSSReceiver.java
Description: WSSReceiver.java

Attachment: AuthorizationKODemo.java
Description: AuthorizationKODemo.java

Attachment: Authorization.java
Description: Authorization.java

Attachment: AuthorizationOKDemo.java
Description: AuthorizationOKDemo.java

<Prev in Thread] Current Thread [Next in Thread>
  • [OpenSPCoop-Dev] Versione "refactored" di WSSReceiver e nuovomodulo di autorizzazione, Montebove Luciano <=
Previous by Date:  R: R: [OpenSPCoop-Dev] Miglioramento pulizia tracce WS-Security daHeader e Body, Montebove Luciano
Next by Date:  [OpenSPCoop-Dev] Lista delle classi metodi che dovrebbero subireRefactoring, Montebove Luciano
Previous by Thread:  R: R: [OpenSPCoop-Dev] Miglioramento pulizia tracce WS-Security daHeader e Body, Montebove Luciano
Next by Thread:  [OpenSPCoop-Dev] Lista delle classi metodi che dovrebbero subireRefactoring, Montebove Luciano
Indexes:  [Date] [Thread]