Porta di Dominio Manuale di Installazione e...

55
Porta di Dominio Manuale di Installazione e Configurazione Versione 1.0 del 25/08/2009

Transcript of Porta di Dominio Manuale di Installazione e...

 

  

  

      

 Porta di Dominio

Manuale di Installazione e Configurazione

 Versione 1.0 del 25/08/2009 

 

  

   SPICCA: Manuale  di  installazione e configurazione PDD 

v.1.0 del 25/08/2009  Pagina 2 

  

 Sommario   1 Introduzione ........................................................................................................................................ 4 2 Requisiti Software ............................................................................................................................... 4 2.1 ORACLE DBMS .............................................................................................................................. 4 2.2 PostgreSQL DBMS ........................................................................................................................ 5 2.3 Gestore Eventi ............................................................................................................................. 6 2.3.1 JBOSS MQ ............................................................................................................................. 6 2.3.2 ACTIVE MQ ........................................................................................................................... 6

3 Installazione e deploy ....................................................................................................................... 10 4 Configurazione .................................................................................................................................. 11 4.1 Database di configurazione PDDEDA ......................................................................................... 11 4.2 Parametri di Configurazione ...................................................................................................... 12 4.3 HANDLER .................................................................................................................................... 24 4.4 TRATTAMENTI ............................................................................................................................ 29 4.5 Configurazione degli Handler con funzionalità di sicurezza ...................................................... 33 4.5.1 Firma Digitale ...................................................................................................................... 34 4.5.2 Token SAML non firmato .................................................................................................... 38 4.5.3 Token SAML firmato ........................................................................................................... 42 4.5.4 Cifratura .............................................................................................................................. 48

4.6 Parametri di configurazione della PDD EDA .............................................................................. 51 5 Monitoraggio .................................................................................................................................... 53 5.1 Transazioni attive ....................................................................................................................... 53 5.2 Storico transazioni ..................................................................................................................... 53

6 Configurazione certificati .................................................................................................................. 54 6.1 Creazione di KeyStore ................................................................................................................ 54 6.2 Import di un certificato nel KeyStore ........................................................................................ 54 6.3 Import di una Certification Authority nel KeyStore ................................................................... 54 6.4 Configurazione Trasporto over HTTPS ....................................................................................... 54 6.5 Configurare JBOSS in HTTPS ...................................................................................................... 55

 

 

  

   SPICCA: Manuale  di  installazione e configurazione PDD 

v.1.0 del 25/08/2009  Pagina 3 

  

   IL CONTENUTO DEL PRESENTE DOCUMENTO PUÒ ESSERE RIPRODOTTO, IN TOTO O IN PARTE, 

PER TUTTI GLI SCOPI FUNZIONALI ALL’ADESIONE AL SISTEMA SPICCA DI REGIONE CAMPANIA ED È ESCLUSO  L’UTILIZZO  A  FINI  DI  LUCRO.  PER  L’UTILIZZO  DI  QUANTO  DI  SEGUITO  RIPORTATO  SI DOVRÀ,  IN TUTTI I CASI, CITARE COME FONTE IL PRESENTE DOCUMENTO. 

 

  

e configurazione PDD  del 25/08/2009  Pagina 4 

  

   SPICCA: Manuale  di  installazione  v.1.0

 1 Introduzione 

Questo documento descrive  le procedure di  installazione e  configurazione della Porta di Dominio.  Il medesimo  è  stato  realizzato  in  collaborazione  con  Vitrociset  S.p.a.  in  quanto  ditta  aggiudicataria dell’appalto  concorso  per  la  realizzazione  del  “Sistema  Regionale  per  la  Cooperazione  Applicativa  in Sicurezza” della Regione Campania. 

  

2 Requisiti Software 

I requisiti software necessari alla PDD sono:  • DBMS Oracle (e/o PostgreSQL) 

• Application Server Jboss 4.0.x 

• AXIS 1.4  

• Preparazione Base Dati 

 

2.1 ORACLE DBMS La presente descrizione è basata sull’utilizzo del DBMS ORACLE. C’e’ da notare, però, che la PDD è stata 

testata anche con MySQL. Per poter essere utilizzata anche con MySQL è necessario però, effettuare alcune conversioni degli script SQL, non oggetto della presente guida1. 

  I passi da seguire per la preparazione della base dati sono:  

Procedura Manuale 

1. Creazione di un’utenza per la PDD (per es. PDD) 

2. Caricare una qualunque shell per il caricamento di file di comandi SQL 

3. Lanciare  il file di script sql:  load‐pdd‐db.sql presente nella directory %PDD_HOME%/sql/. Questo 

script  crea  il  nuovo  schema  con  tutte  le  tabelle,  sequence,  trigger...  e  crea  l’utenza 

PDDUSER/PDDUSER.  Qualora  si  decida  di  creare  un’utenza  differente,  modificare  i  file: 

%PDD_SRC_DIR%/Software/sql/create_user.sql  e  %JBOSS_HOME%\server\default\deploy\PDD‐

ds.xml. 

                                                             

1 Nella  stessa directory  è presente un  file batch  che  effettua  la maggior parte delle  conversioni  tra ORACLE e MYSQL. Per poter  funzionare,  il  file batch  (build_mysql_data.bat) necessita di  trovare nel path  i  comandi open source  (stile  unix)  cat  e  sed  gratuitamente  scaricabili  da  internet  all’indirizzo: http://unxutils.sourceforge.net/UnxUtils.zip 

 

  

   SPICCA: Manuale  di  installazione e configurazione PDD 

v.1.0 del 25/08/2009  Pagina 5 

  

Procedura Automatica 

1. Posizionarsi  nella  directory:  %PDD_HOME%/sql  e  lanciare  il  batch:  setupdb.bat.  Lo  script 

provvederà a creare l’utenza PDDUSER/PDDUSER@ORCL e a lanciare lo script load‐db.sql. 

2. Qualora  il  SID  del  database  non  sia  ORCL,  modificare  il  file 

%PDD_HOME%/Software/descriptor/db/PDD‐ds.xml opportunamente. 

 

2.2 PostgreSQL DBMS La presente descrizione è basata sull’utilizzo del DBMS PostgreSQL 8.1. 

 

I passi da seguire per la preparazione della base dati sono: 

 

Procedura Automatica 

1. Posizionarsi nella directory: %PDD_HOME%/sql/postgres e  lanciare  il batch: setupdb.bat. Lo script 

provvederà a creare l’utenza PDDUSER@PDD e a lanciare lo script di creazione della base dati PDD 

per PostgreSQL. Nota,  che  la password dell’utenza PDDUSER della BaseDati PDD verrà  chiesta  in 

fase di creazione dall’apposito script (setupdb.bat). 

2. Qualora  il  DB_NAME  del  database  non  sia  PDD,  modificare  il  file  %PDD_HOME%/Software/ 

sql/postgresql/setupdb.bat opportunamente: 

- Modificare  la  seguente  riga  createdb  ‐U  pdduser  pdd,  dove  pdduser  è  l’utenza  del 

DataBase e pdd è il DB_NAME della BaseDati. 

3. Modificare la variabile DBHOST con il nome/indirizzo IP del db server  

 

  

2

   SPICCA: Manuale  di  installazione e configurazione PDD 

v.1.0 del 25/08/2009  Pagina 6 

  

.3 Gestore Eventi Qualora  fosse  richiesto  alla  PDD  di  effettuare  cooperazione  applicativa  secondo  il  paradigma 

Publish&Subscribe, risulta necessario installare/configurare un gestore eventi supportato dalla PDD. 

I  gestori  eventi  attualmente  supportati  dalla  PDD  sono  JBOSS MQ  e  ACTIVE MQ.  Di  seguito  sono 

descritte le fasi di configurazione ed installazione. E’ da notare come la configurazione per JBOSS MQ risulti 

molto più semplice in quanto già presente nella distribuzione di JBOSS utilizzata dalla PDD. 

 

2.3.1 JBOSS MQ Settare tramite il configuratore ( le seguenti variabili:  

• MQ_ENGINE = JBOSS_MQ 

• PS_ADAPTER_URI = http://[host]:{port}/axis/services/PSJMSAdapter 

 

Settare nel file build.properties nella directory %INSTALL_DIR%\build le seguenti proprietà: 

• mq.version.dir = jboss_mq 

• mq.engine = jboss_mq 

 

2.3.2 ACTIVE MQ Per la seguente configurazione è richiesto come requisito base ActiveMQ Version 4.0.x 

 

Copiare nella cartella di deploy della versione utilizzata di JBOSS il file activemq‐ra‐4.0.rar presente 

nella directory %ACTIVE_MQ_INSTALL%\lib\optional 

         

 Settare tramite il configuratore le seguenti variabili:  

• MQ_ENGINE = ACTIVE_MQ 

• PS_ADAPTER_URI = http://[host]:{port}/axis/services/PSJMSAdapter 

 

 Settare nel file build.properties nella directory %INSTALL_DIR%\build le seguenti proprietà: 

• mq.version.dir = active_mq 

• mq.engine = active_mq 

 

  

   SPICCA: Manuale  di  installazione e configurazione PDD 

v.1.0 del 25/08/2009  Pagina 7 

  

Aggiungere  al  file  di  configurazione  activemq.xml  presente  nella  directory 

%ACTIVE_MQ_INSTALL%\conf la seguente riga indicata in grassetto: 

 

<bean class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer" />  

<broker brokerName="receiver1" useJmx="false"> 

 

<plugins> 

            <!‐‐  use JAAS to authenticate using the login.config file on the classpath to configure JAAS ‐‐> 

   

        <jaasAuthenticationPlugin configuration="activemq‐domain" /> 

 

    <authorizationPlugin> 

        <map> 

          <authorizationMap> 

            <authorizationEntries> 

<authorizationEntry  topic="topic.PDDTopic"  read="users"  write="users,pull"     

admin="users" /> 

<authorizationEntry  topic="ActiveMQ.Advisory.>"  read="users"  write="users" 

admin="users"/> 

            </authorizationEntries> 

          </authorizationMap> 

        </map> 

     </authorizationPlugin> 

    </plugins> 

 

• PERSISTENZA DEI MESSAGGI IN ACTIVEMQ CON IL DMBS DERBY 

Per  default,  ActiveMQ  utilizza  DERBY  per  la  persistenza  dei  dati.  Non  è  quindi  necessario 

apportare alcuna modifica. In ogni caso, editare il file activemq.xml e verificare le seguenti righe: 

 

<persistenceAdapter>

 

  

   SPICCA: Manuale  di  installazione e configurazione PDD 

v.1.0 del 25/08/2009  Pagina 8 

  

<journaledJDBC journalLogFiles="5"

dataDirectory="../activemq- data"/>

</persistenceAdapter>

 

 

• PERSISTENZA DEI MESSAGGI IN ACTIVEMQ CON IL DMBS POSTGRESQL 

Per  gestire  la  persistenza  dei messaggi  è  necessario  creare  un  utenza  e  un  database  sotto 

PostgreSQL. Per default  l’utenza da  creare è utente:activemq password:activemq ed  il nome del 

database è activemq. Editare, in seguito, il file activemq.xml e aggiungere le seguenti righe: 

 

<persistenceAdapter>

<!-- <journaledJDBC journalLogFiles="5" dataDirectory="../activemq-

data"/> -->

<!-- To use a different datasource, use th following syntax : -->

<journaledJDBC journalLogFiles="5" dataSource="#postgres-ds"/>

</persistenceAdapter>

 

ed i parametri di connessione al database: 

<!-- Postgres DataSource Sample Setup -->

<bean id="postgres-ds" class="org.postgresql.ds.PGPoolingDataSource">

<property name="serverName" value="{hostServer}"/>

<property name="databaseName" value="activemq"/>

<property name="portNumber" value="0"/>

<property name="user" value="activemq"/>

<property name="password" value="activemq"/>

<property name="dataSourceName" value="postgres"/>

<property name="initialConnections" value="1"/>

<property name="maxConnections" value="10"/>

</bean>

Nella directory %ACTIVE_MQ_INSTALL%\conf, se non esiste il file login.config crearlo. 

     

 

  

   SPICCA: Manuale  di  installazione e configurazione PDD 

v.1.0 del 25/08/2009  Pagina 9 

  

    Editarlo e scrivere le seguenti righe: 

    activemq‐domain { 

      org.apache.activemq.jaas.PropertiesLoginModule required 

          debug=true 

          org.apache.activemq.jaas.properties.user="users.properties" 

          org.apache.activemq.jaas.properties.group="groups.properties"; 

          }; 

 

Nella  directory  %ACTIVE_MQ_INSTALL%\conf,  editare  il  file  groups.properties  e  aggiungere  i 

seguenti utenti: 

users=push,pull 

 

Nella directory %ACTIVE_MQ_INSTALL%\conf, editare il file users.properties e aggiungere i seguenti 

utenti: 

NB: la simbologia è da intendere USER=PASSWORD 

push=push 

pull=pull 

 

STARTUP 

Prima di lanciare JBOSS bisogna lanciare il Listener di ACTIVE MQ. 

Lanciare il seguente script:  

%ACTIVE_MQ_INSTALL%\bin\activemq.bat (.sh) 

       

Dopo sarà possibile lanciare lo startup di JBOSS nel modo canonico. 

 

  

Se configurazione PDD 

Pagina 10 

  

   PICCA: Manuale  di  installazione  v.1.0 del 25/08/2009 

3 Installazione e deploy 

I passi da seguire per installare la PDD sono i seguenti:  

- Estrarre jboss4.0.5.zip nella directory di installazione (Installazione JBoss). Viene creata la 

dir <directory di installazione>/jboss‐4.0.5 

- Settare la variabile di ambiente JBOSS_HOME con <directory di installazione>/jboss‐4.0.5 

- Settare la variabile di ambiente JBOSS_SERVER_NAME con il nome del server utilizzato 

(JBOSS_SERVER_NAME=default) 

- Posizionarsi nella directory %PDD_HOME%/build 

- ant2 clean 

- ant all 

- ant axis_dist_install 

- ant install 

- Avviare JBoss 

ant deploy 

testare axis all'url: http://localhost:8080/axis 

                                                            2 ANT è richiesto per la sola installazione e compilazione. Supportata dalla versione ant‐1.6.5 in poi. 

 

  

   SPICCA: Manuale  di  installazione e configurazione PDD 

v.1.0 del 25/08/2009  Pagina 11 

  

4 Configurazione 

Gli  riportati.  elementi di configurazioni sono di seguito

4.1 Database di configurazione PDDEDA  

Questo  documento  descrive  il  DataBase  di  configurazione  della  Porta  di  Dominio  EDA  in  fase  di 

installazione.  

Gli elementi che compongono il DataBase sono i seguenti: 

• PORTE 

• HANDLER 

• INVOKER 

• LOGGER 

• TRATTAMENTI 

• PDD_CONFIG (Parametri di configurazione della Porta di Dominio EDA) 

 

COMPONENTI  OBBLIGATORI PER IL CORRETTO START‐UP DELLA PDD‐EDA 

Porta  Tipologia  Profilo  Invoker 

I_PS_PUBLISH  APPLICATIVA  SINCRONO  INTEGRATION_MANAGER 

I _PS_SUBSCRIBE_PUSH  APPLICATIVA  SINCRONO  INTEGRATION_MANAGER 

I _PS_SUBSCRIBE_PULL  APPLICATIVA  SINCRONO  INTEGRATION_MANAGER 

I_PS_GETEVENT  APPLICATIOVA  SINCRONO  INTEGRATION_MANAGER 

I_PORTA_DEL_GEN  DELEGATA  SINCRONO  COOPERATION_MANAGER 

I _PS_CALLBACK  APPLICATIVA  SINCRONO  INTEGRATION_MANAGER 

I _PORTA_DEL_ASINC_SIMM_GEN  DELEGATA  A‐SINCRONO_SIMM  COOPERATION_MANAGER 

I _PORTA_APPL_ASINC_SIMM_GEN  APPLICATIVA  A‐SINCRONO_SIMM  ASAP_INTEGRATION_MANAGER 

 

EPROXY_INIT_HANDLER   com.enterpriseda.pdd.level1.handler.common.EProxyInitHandler 

 

EGOV_HANDLER   com.enterpriseda.pdd.level1.handler.common.EGovHandler

 

VALIDATION_HANDLER   com.enterpriseda.pdd.level1.handler.common.ValidationHandler 

 

PDD_LOG org.apache.logger.Logger 

 

  

   SPICCA: Manuale  di  installazione e configurazione PDD 

v.1.0 del 25/08/2009  Pagina 12 

  

4.2 Parametri di Configurazione  

PORTE 

Porta  Tipologia  Profilo  Invoker 

S_SINCRONO  APPLICATIVA  SINCRONO  INTEGRATION_MANAGER 

S_SINCRONO_DEL  DELEGATA  SINCRONO  COOPERATION_MANAGER 

 

I_PS_PUBLISH

 

APPLICATIVA  SINCRONO  INTEGRATION_MANAGER 

I _PS_SUBSCRIBE_PUSH  APPLICATIVA  SINCRONO  INTEGRATION_MANAGER 

I _PS_SUBSCRIBE_PULL  APPLICATIVA  SINCRONO  INTEGRATION_MANAGER 

I_PS_GETEVENT  APPLICATIOVA  SINCRONO  INTEGRATION_MANAGER 

I_PORTA_DEL_GEN  DELEGATA  SINCRONO  COOPERATION_MANAGER 

S _PS_GETEVENT_DEL  DELEGATA  SINCRONO  COOPERATION_MANAGER 

I _PS_CALLBACK  APPLICATIVA  SINCRONO  INTEGRATION_MANAGER 

S_ASINC_ASIM  APPLICATIVA  A‐SINCRONO  ASAP_INTEGRATION_MANAGER 

S_ASINC_ASIM_DEL  DELEGATA  A‐SINCRONO  COOPERATION_MANAGER 

S_ASINC_SIM  APPLICATIVA  A‐SINCRONO  ASAP_INTEGRATION_MANAGER 

S_ASINC_SIM_DEL  DELEGATA  A‐SINCRONO  COOPERATION_MANAGER 

   

 

Porta  Tipologia  Profilo  Invoker 

S_PKCS7  APPLICATIVA  SINCRONO  INTEGRATION_MANAGER 

S_PKCS7_DEL  DELEGATA  SINCRONO  COOPERATION_MANAGER 

 

  

   SPICCA: Manuale  di  installazione e configurazione PDD 

v.1.0 del 25/08/2009  Pagina 13 

  

Porta  Tipologia  Profilo  Invoker 

 

I _PORTA_DEL_ASINC_SIMM_GEN DELEGATA  A‐SINCRONO_SIMM  COOPERATION_MANAGER 

I _PORTA_APPL_ASINC_SIMM_GEN  APPLICATIVA  A‐SINCRONO_SIMM  ASAP_INTEGRATION_MANAGER 

 

NB: In neretto sono contrassegnati gli Handler OBBLIGATORI per il funzionamento dell PDD‐EDA 

 

DETTAGLIO PORTE 

S_SINCRONO 

wsdl    RFU  

operationNa

me   echo  

endPoint   http://localhost:8080/axis/services/SincronoSer

vice  

contentMode 

  2  

operationStyl

e   RFU  

descrizioneM

ode   0  

 

 

S_SINCRONO_DEL 

class    com.enterpriseda.pdd.level2.PDDPortaDelegataSincrona  

paType    TIPO PA  

descrizioneMode 

  0  

 

  

   SPICCA: Manuale  di  installazione e configurazione PDD 

v.1.0 del 25/08/2009  Pagina 14 

  

paCode    ALTRA PA  

contentMode    2  

endPoint   http://localhost:8080/axis/services/EProxy?SERVICE_ID=S_SINCR

ONO  

operationName   echo  

paTelematicAddr

ess   http://192.168.1.1  

servizio.tipo  TIPO_SERVIZIO 

 

 

I_PS_PUBLISH 

class   com.enterpriseda.pdd.level2.PDDPortaApplicativaSincr

ona  

operationNam

e   publish  

endPoint    http://localhost:8080/axis/services/PSJMSAdapter  

contentMode 

  2  

operationStyle 

  RFU  

escrizione 

Mode   0  

   false  

 

 

I_PS_SUBSCRIBE_PUSH 

 

  

   SPICCA: Manuale  di  installazione e configurazione PDD 

v.1.0 del 25/08/2009  Pagina 15 

  

class   com.enterpriseda.pdd.level2.PDDPortaApplicativaSincr

ona  

operationNam

e   subscribePush  

endPoint    http://localhost:8080/axis/services/PSJMSAdapter  

contentMode 

  2  

operationStyle 

  RFU  

escrizione 

Mode   0  

 

 

I_PS_SUBSCRIBE_PULL 

class   com.enterpriseda.pdd.level2.PDDPortaApplicativaSincr

ona  

operationNam

e   subscribePull  

endPoint    http://localhost:8080/axis/services/PSJMSAdapter  

contentMode 

  2  

operationStyle 

  RFU  

escrizione 

Mode   0  

   false  

 

  

   SPICCA: Manuale  di  installazione e configurazione PDD 

v.1.0 del 25/08/2009  Pagina 16 

  

 

I_PS_GETEVENT 

class   com.enterpriseda.pdd.level2.PDDPortaApplicativaSincr

ona  

operationNam

e   getEvent  

contentMode 

  2  

operationStyle 

  RFU  

escrizione 

Mode   0  

   false  

endPoint    http://localhost:8080/axis/services/PSJMSAdapter  

 

 

 

S_PS_GETEVENT_DEL 

paType    PA_TYPE  

escrizione 

Mode   0  

paTelematicAddr

ess   http://192.168.0.1  

operationName   getEvent  

contentMode    2  

class    com.enterpriseda.pdd.level2.PDDPortaDelegataSincrona  

 

  

   SPICCA: Manuale  di  installazione e configurazione PDD 

v.1.0 del 25/08/2009  Pagina 17 

  

endPoint   http://localhost:8080/axis/services/EProxy?SERVICE_ID=S_PS_GETE

VENT 

servizio.tipo  TIPO_SERVIZIO 

 

 

I_PS_CALLBACK 

class   com.enterpriseda.pdd.level2.PDDPortaApplicativaSincr

ona  

contentMod

e   2  

operationSt

yle   RFU  

endPoint    http://localhost:8080/axis/services/SincronoService  

operationNa

me   putEvent  

 

 

I_PORTA_GEN_DEL 

paTelematicAddress    http://TO_SET     

contentMode    2  

paType    PA  

operationName    TO_SET  

class    com.enterpriseda.pdd.level2.PDDPortaDelegataSincrona  

descrizioneMode    0  

endPoint    http://TO_SET  

 

  

   SPICCA: Manuale  di  installazione e configurazione PDD 

v.1.0 del 25/08/2009  Pagina 18 

  

paCode    PA  

servizio.tipo  TIPO_SERVIZIO 

 

 

S_ASINC_ASIM 

class   com.enterpriseda.pdd.level2.PDDPortaApplicativaAsincronaAsi

mmetrica  

wsdl    RFU   

operationName    sum  

servizio.operazione.richiesta.suc

cessiva checksum 

endPoint    http://localhost:8080/axis/services/AsincronoAsimmService  

contentMode    2  

operationStyle    RFU  

asap.factory.actor.uri    uri:factory  

asap.instance.actor.uri    uri:instance  

descrizioneMode    0  

 

 

S_ASINC_ASIM_DEL 

class   com.enterpriseda.pdd.level2.PDDPortaDelegataAsincronaAsimmetrica  

  

paType   

Pubblica Amministrazione

  

 

  

   SPICCA: Manuale  di  installazione e configurazione PDD 

v.1.0 del 25/08/2009  Pagina 19 

  

paTelematicAddress 

  http://192.168.1.1/  

paCode    PDD Regione Lazio  

contentMode    2  

endPoint    http://localhost:8080/axis/services/EProxy?SERVICE_ID=S_ASINC_ASIM 

operationName    sum  

descrizioneMode    0  

ResultDataType   <complexType  name="ResultDataType">  <sequence>  <element 

name="Sum" type="xsd:string"/> </sequence> </complexType>  

ContextDataType   

<complexType  name="ContextDataType">  <sequence>  <element 

name="X"  type="int"/>  <element  name="Y"  type="int"/>  </sequence> 

</complexType>  

servizio.tipo  TIPO_SERVIZIO 

 

 

S_ASINC_SIM 

class   com.enterpriseda.pdd.level2.PDDPortaApplicativaAsincronaSimmet

rica  

wsdl    RFU   

operationName    TO_FILL  

endPoint    TO_FILL  

contentMode    2  

operationStyle    RFU  

 

  

   SPICCA: Manuale  di  installazione e configurazione PDD 

v.1.0 del 25/08/2009  Pagina 20 

  

asap.factory.actor.

uri   uri:factory  

asap.instance.actor

.uri   uri:instance  

descrizioneMode    0  

isPortaApplicativaCall

back true 

servizio.nome  Nome_servizio 

 

 

 

 

 

S_ASINC_SIM_DEL 

endPoint    TO_FILL  

operationName    TO_FILL  

descrizioneMode  0  

class    com.enterpriseda.pdd.level2.PDDPortaDelegataAsincronaSimmetrica

paType    TO_FILL  

paTelematicAddr TO_FILL  

paCode    TO_FILL  

contentMode    2  

servizio.tipo  TIPO_SERVIZIO

 

 

 

S_PKCS7 

 

  

   SPICCA: Manuale  di  installazione e configurazione PDD 

v.1.0 del 25/08/2009  Pagina 21 

  

class   com.enterpriseda.pdd.level2.PDDPortaApplicativaSincr

ona  

wsdl    RFU  

operationNa

me   uploadFile  

endPoint    http://localhost:8180/axis/services/FileServer  

contentMode 

  2  

operationStyl

e   RFU  

descrizioneM

ode   0  

pkcs7.apply.cr

ypt   true  

pkcs7.apply.si

gn   true  

x509.apply.sig

n   true  

x509.verify.sig

n   false  

 

S_PKCS7_DEL 

class   com.enterpriseda.pdd.level2.PDDPortaDelegataSincrona  

  

 

  

   SPICCA: Manuale  di  installazione e configurazione PDD 

v.1.0 del 25/08/2009  Pagina 22 

  

paType    TIPO PA  

descrizioneMode 

  0  

paTelematicAddr

ess   192.168.1.1  

paCode    ALTRA PA  

contentMode    2  

endPoint   http://localhost:8080/axis/services/EProxy?SERVICE_ID=S_DEMO_PK

CS7  

operationName    uploadFile  

pkcs7.apply.cryp

t   true  

pkcs7.apply.sign 

  true  

x509.apply.sign    true  

x509.verify.sign    true  

servizio.tipo  TIPO_SERVIZIO 

 

 

 

I_PORTA_DEL_ASINC_ASIMM_GEN 

paType    Toset 

paCode    Toset 

operationName    toset  

 

  

   SPICCA: Manuale  di  installazione e configurazione PDD 

v.1.0 del 25/08/2009  Pagina 23 

  

paTelematicAddress 

  http://someurl  

class    com.enterpriseda.pdd.level2.PDDPortaApplicativaSincrona 

 

 

I_PORTA_DEL_ASINC_ASIMM_GEN 

asap.factory.actor.uri  uri:toActorUri  

asap.instance.actor.uri   uri:toActorUri  

operationName    toset  

endPoint    http://someurl  

class    com.enterpriseda.pdd.level2.PDDPortaApplicativaSincrona 

 

 

  

   SPICCA: Manuale  di  installazione e configurazione PDD 

v.1.0 del 25/08/2009  Pagina 24 

  

 

4.3 HANDLER 

Handler  Classe 

EPROXY_INIT_HANDLER   

 

com.enterpriseda.pdd.level1.handler.common.EProxyInitHandler 

 

EGOV_HANDLER   

com.enterpriseda.pdd.level1.handler.common.EGovHandler

 

VALIDATION_HANDLER   

 

com.enterpriseda.pdd.level1.handler.common.ValidationHandler11 

 

PKCS7_HANDLER   

 

com.enterpriseda.pdd.level1.handler.security.PKCS7Handler 

 

EnvelopeLoggerHandler  com.enterpriseda.pdd.level1.handler.common.EnvelopeLoggerHandler 

WSDOALLSENDER_HANDLER  org.apache.ws.axis.security.WSDoAllSender 

WSDOALLRECEIVER_HANDLER    org.apache.ws.axis.security.WSDoAllReceiver  

 

 

NB: In neretto sono contrassegnati gli Handler OBBLIGATORI per il funzionamento dell PDD‐EDA 

 

 

DETTAGLIO HANDLER 

 

EPROXY_INIT_HANDLER 

cl

ass   

com.enterpriseda.pdd.level1.handler.common.EProxyInitHan

dler  

 

 

EGOV_HANDLER 

 

  

   SPICCA: Manuale  di  installazione e configurazione PDD 

v.1.0 del 25/08/2009  Pagina 25 

  

  class   com.enterpriseda.pdd.level1.handler.common.EGovHan

dler  

 

 

VALIDATION_HANDLER 

cl

ass   

com.enterpriseda.pdd.level1.handler.common.ValidationHandl

er11  

 

 

ENVELOPE_LOGGER_HANDLER 

cl

ass   

com.enterpriseda.pdd.level1.handler.common.EnvelopeLoggerHan

dler  

 

 

PKCS7_HANDLER 

cl

ass   

com.enterpriseda.pdd.level1.handler.security.PKCS7Han

dler  

 

 

WS_DO_ALL_SENDER 

cl

ass   

org.apache.ws.axis.security.WSDoAllSe

nder  

 

 

WS_DO_ALL_RECEIVER 

cl

ass   

org.apache.ws.axis.security.WSDoAllRece

iver  

 

 

  

   SPICCA: Manuale  di  installazione e configurazione PDD 

v.1.0 del 25/08/2009  Pagina 26 

  

 

 

  

   SPICCA: Manuale  di  installazione e configurazione PDD 

v.1.0 del 25/08/2009  Pagina 27 

  

 

INVOKER 

Invoker  Classe 

INTEGRATION_MANAGER   com.enterpriseda.pdd.invoker.IntegrationInvokerImpl 

COOPERATION_MANAGER   com.enterpriseda.pdd.invoker.CooperationInvokerImpl  

ASAPIntegrationManager 

 

com.enterpriseda.pdd.invoker.ASAPIntegrationInvokerImpl 

 

 

 

 

PDD_LOG 

log4j.additivity.pdd    FALSE  

log4j.appender.pddFile.datePattern    ‐yyyy‐MM‐dd  

log4j.appender.pddFile.layout    org.apache.log4j.PatternLayout  

log4j.appender.pddFile.layout.Convers

ionPattern   %d{dd‐MM‐yyyy HH:mm:ss} ‐ %p ‐ [%C{1} %M] %m%n   

log4j.appender.pddFile.File    /home/pdd/pdd/logs/pdd.log  

log4j.appender.pddFile    org.apache.log4j.DailyRollingFileAppender   

log4j.appender.pddJMS.datePattern    ‐yyyy‐MM‐dd  

log4j.appender.pddJMS.layout    org.apache.log4j.PatternLayout  

log4j.appender.pddJMS.layout.Conver

sionPattern   %d{dd‐MM‐yyyy HH:mm:ss} ‐ %p ‐ [%C{1} %M] %m%n  

log4j.appender.pddJMS   com.enterpriseda.spicca.sensoreterminale.appender.jms.JMSApp

ender  

log4j.appender.pddJMS.errorHandler   com.enterpriseda.spicca.sensoreterminale.appender.handler.Fail

 

  

   SPICCA: Manuale  di  installazione e configurazione PDD 

v.1.0 del 25/08/2009  Pagina 28 

  

overErrorHandler  

log4j.appender.pddJMS.errorHandler.l

ogger‐ref.ref   pdd  

log4j.appender.pddJMS.errorHandler.

appender‐ref.ref   BACKUP  

log4j.appender.BACKUP.Threshold    DEBUG  

log4j.appender.BACKUP   com.enterpriseda.spicca.sensoreterminale.appender.file.LoggingE

ventFileAppender  

log4j.appender.pddJMS.Threshold    DEBUG  

log4j.appender.pddJMS.QueueConnec

tionFactoryBindingName   ConnectionFactory  

log4j.appender.pddJMS.InitialContext

FactoryName   org.apache.activemq.jndi.ActiveMQInitialContextFactory  

log4j.appender.pddJMS.ProviderURL    tcp://10.28.131.129:61616  

log4j.appender.pddJMS.UserName    pdd  

log4j.appender.pddJMS.Password    pdd  

log4j.appender.pddJMS.QueueBinding

Name   queue.pddQueue  

log4j.appender.pddJMS.LocationInfo    true  

log4j.appender.BACKUP.path    /tmp/  

log4j.appender.BACKUP.baseNomeFile 

  BackupProvaLog  

log4j.logger.pdd    INFO, pddFile  

 

 

 

  

   SPICCA: Manuale  di  installazione e configurazione PDD 

v.1.0 del 25/08/2009  Pagina 29 

  

 

 

4.4 TRATTAMENTI In questa sezione si affronterà  la   configurazione delle proprietà dei singoli  trattamenti associabili ad 

una Porta. 

Di  seguito  un  esempio  di  configurazione  dei  due  Handler  delegati  alla  Sicurezza  (WsDoAllSender, 

WsDoAllReceiver). 

 

WsDoAllSender – Dettaglio 

passwordCallbackClass  com.enterpriseda.pdd.level1.wsutils.PasswordCallback 

org.apache.ws.security.crypto.merlin.keys

tore.password security 

action  Signature Timestamp 

org.apache.ws.security.crypto.provider  org.apache.ws.security.components.crypto.Merlin 

org.apache.ws.security.crypto.merlin.keys

tore.type jks 

user  wss4jCertDSA 

signatureKeyIdentifier  DirectReference 

org.apache.ws.security.crypto.merlin.file  /home/pdd/pdd/security/keystore/wss4j.keystore 

 

 

 

WsDoAllReceiver – Dettaglio 

passwordCallbackClass    com.enterpriseda.pdd.level1.wsutils.PasswordCallback  

org.apache.ws.security.crypto.merlin.key

store.password   security  

action    Signature Timestamp  

 

  

   SPICCA: Manuale  di  installazione e configurazione PDD 

v.1.0 del 25/08/2009  Pagina 30 

  

org.apache.ws.security.crypto.provider    org.apache.ws.security.components.crypto.Merlin  

org.apache.ws.security.crypto.merlin.key

store.type   jks  

org.apache.ws.security.crypto.merlin.file  c:/pdd/security/keystore/wss4j.keystore 

 

 

S_SINCRONO ( Porta Applicativa con profilo di comunicazione Sincrono ) 

S_SINCRO

NO   WsDoAllSender    Server  

Respo

nse      Disabilitato   

S_SINCRO

NO   wsDoAllReceiver   Server  

Reque

st      Disabilitato   

S_SINCRO

NO   Validation    Server  

Reque

st      Abilitato   

S_SINCRO

NO   PKCS7Handler    Server  

Reque

st      Disabilitato   

S_SINCRO

NO PKCS7Handler  Server 

Respo

nse Disabilitato 

 

 

S_SINCRONO_DEL ( Porta Delegata con profilo di comunicazione Sincrono ) 

S_SINCRONO_

DEL   WsDoAllSender    Client  

Requ

est Disabilitato  

S_SINCRONO_

DEL   wsDoAllReceiver   Client 

Resp

onse    Disabilitato   

S_SINCRONO_

DEL   Validation    Client 

Resp

onse    Abilitato   

 

  

   SPICCA: Manuale  di  installazione e configurazione PDD 

v.1.0 del 25/08/2009  Pagina 31 

  

S_SINCRONO_

DEL   EGovHandler  Client 

Requ

est      Abilitato   

S_SINCRONO_

DEL   PKCS7Handler    Client  

Requ

est      Disabilitato   

S_SINCRONO_

DEL PKCS7Handler  Client 

Resp

onse Disabilitato 

 

 

I_PS_PUBLISH 

S_PS_PUBL

ISH   Validation 

Client 

  

Resp

onse Abilitato 

S_PS_PUBL

ISH   EGovHandler  Client

Requ

est Abilitato 

 

 

I_PS_SUBSCRIBE_PUSH 

S_PS_SUBSCRIBE_P

USH   

Validatio

n   

C

lient 

Resp

onse    

Abilit

ato   

S_PS_SUBSCRIBE_P

USH   

EGovHa

ndler 

C

lient 

Requ

est      

Abilit

ato   

   

 

I_PS_SUBSCRIBE_PULL 

S_PS_SUBSCRIBE_P

ULL   

Validatio

n   

C

lient 

Resp

onse    

Abilit

ato   

S_PS_SUBSCRIBE_P

ULL   

EGovHa

ndler 

C

lient 

Requ

est      

Abilit

ato   

 

  

   SPICCA: Manuale  di  installazione e configurazione PDD 

v.1.0 del 25/08/2009  Pagina 32 

  

 

 

I_PS_GETEVENT_DEL 

S_PS_GETEVENT_

DEL   

Validatio

n   

C

lient 

Resp

onse    

Abilit

ato   

S_PS_GETEVENT_

DEL   

EGovHa

ndler 

C

lient 

Requ

est      

Abilit

ato   

 

 

I_PS_GETEVENT 

S_PS_GETEVENT    ValidationServer 

  

Req

uest Abilitato 

 

 

I_PORTA_DEL_GEN 

I_PORTA_DEL_

GEN   

Validatio

n   

C

lient 

Resp

onse    

Abilit

ato   

I_PORTA_DEL_

GEN   

EGovHa

ndler 

C

lient 

Requ

est      

Abilit

ato   

 

 

 

 

I_PORTA_DEL_ASINC_SIMM_GEN 

I_PORTA_DEL_ASINC_SIMM_

GEN   

Validatio

n   

C

lient 

Resp

onse    

Abilit

ato   

I_PORTA_DEL_ASINC_SIMM_

GEN   

EGovHa

ndler 

C

lient 

Requ

est      

Abilit

ato   

 

  

   SPICCA: Manuale  di  installazione e configurazione PDD 

v.1.0 del 25/08/2009  Pagina 33 

  

 

 

S_ASINC_SIMM_DEL 

  S_ASINC_SIMM_DELValidatio

n   

C

lient 

Resp

onse    

Abilit

ato   

S_ASINC_SIMM_DEL  EGovHa

ndler 

C

lient 

Requ

est      

Abilit

ato   

 

 

S_PS_CALLBACK 

  S_PS_CALLABCKValidatio

n   

Se

rver 

Requ

est    

Abilit

ato   

S_PS_CALLBACK  EGovHa

ndler 

Se

rver 

Requ

est      

Abilit

ato   

 

4.5 Configurazione degli Handler con funzionalità di sicurezza In  questa  sezione  descriveremo  le  procedure  necessarie  alla  configurazione  delle  funzionalità  di 

sicurezza della PDD, realizzate attraverso una personalizzazione dell'implementazione open suorce WSS4j delle specifiche Web Service Security. 

 Le  diverse  funzionalità  di  sicurezza  sono  implementate  da  due  Handler,  WSDoAllSender  e 

WsDoAllReceiver, che vanno opportunamente configurati nella porta di dominio. L'handler WsDoAllSender è da utilizzare nei messaggi  in uscita dalla Porta di Dominio  (Contesto Client/Flusso Request e Contesto Server/Flusso  Response), mentre  l'handler WsDoAllReceiver  è  da  utilizzare  nei messagi  in  entrata  nella Porta di Dominio (Contesto Client/Flusso Response e Contesto Server/Flusso Request). 

Relativamente  al  corretto  posizionamento  degli  Handler  nel  chain  handlers,  ovvero  nella  catena  di handler  che elabora un messaggio  in  transito da e verso  la PDD,  si osservi che  l'Handerl WsDoAllSender deve  essere  sempre  l'ultimo  handler  che  elabora  un messaggio  in  uscita  dalla  PDD, mentre  l'handler WsDoAllReceiver deve essere sempre il primo handler che elabora un messaggio in ingresso alla PDD. 

 Prima  di  descrivere  nel  dettaglio  le  procedure  per  la  configurazione  degli  handler  di  sicurezza,  è 

opportuno sottolineare che WSS4j, come è naturale immaginare, è basata su un’infrastruttura di sicurezza a chiave pubblica. Per un’agevole gestione delle chiavi private/pubbliche e dei certificati digitali,   WSS4j  fa uso  dei  Keystore,  che  rappresentano  Repository  (protetti  da  password)  per  la  memorizzazione  ed  il recupero di chiavi e certificati. A partire dalla versione 1.2, JDK fornisce un’utility, denominata keytool, per la gestione dei Keystore che consente di effettuare operazioni quali, a titolo esemplificativo,   la creazione 

 

  

   SPICCA: Manuale  di  installazione e configurazione PDD 

v.1.0 del 25/08/2009  Pagina 34 

  

di  una  coppia  chiave  privata/pubblica,  l’import  ed  export  di  chiavi,  l’import  di  certificati  rilasciati  da Certification Authority e così via. Nella parte finale di questo documento è previsto un paragrafo relativo alle funzionalità offerte dal keytool.  

 Configurazione WSDoAllSender e WsDoAllReceiver  

Le funzionalità di sicurezza  implementate nella PDD sono  le seguenti: firma digitale, token SAML. Per 

ogni  funzionalità,  mostreremo  come  configurare  opportunamente  gli  handler    WSDoAllSender  e 

WsDoAllReceiver  rispettivamente  per  una  porta  delegata  ed  una  porta  applicativa.  Il  contesto  che 

prenderemo di    riferimento è quello di una porta delegata  sincrona  (denominata S_SINCRONO_DEL) che 

invoca  una  porta  applicativa  (denominata  S_SINCRONO).  In  questo  contesto,  a  valle  delle  osservazioni 

riportate  in  precedenza  in  merito  al  corretto  posizionamento  degli  Handler,  configureremo  l’handler 

WSDoAllSender per  i messaggi  in uscita dalla PDD delegata (Contesto Client / Flusso Request) e  l’handler 

WsDoAllReceiver per i messaggi in ingresso alla PDD applicativa (Contesto Server / Flusso Request).  

 4.5.1 Firma Digitale 

 Configurazione dell’Handler WSDoAllSender per la PDD delegata (Contesto Client / Flusso Request) 

 

  

   SPICCA: Manuale  di  installazione e configurazione PDD 

v.1.0 del 25/08/2009  Pagina 35 

  

   Descrizione dei parametri dell’Handler  • passwordCallbackClass  =  com.enterpriseda.pdd.level1.wsutils.PasswordCallback:  il  parametro  si 

riferisce  ad  una  classe  contenente  un  insieme  di  coppie  (user,  pwdUser).  Nel  caso  della  firma digitale,  user  è  l'identificativo,  nell'ambito  del  keystore  della  chiave  privata  con  cui  firmare  il messaggio e pwdUser è la pwd della chiave privata identificata da user. 

 • org.apache.ws.security.crypto.merlin.keystore.password" = "security": è la password del keystore  • org.apache.ws.security.crypto.merlin.file = c://pdd//security//keystore//wss4j.keystore: è  il  file 

del keystore  • action = Signature Timestamp: è il parametro che determina l'azione effettuata dagli handler WSS. 

In  particolare  specificando  “Signature  Timestamp”  l’handler  applicherà  una  firma  digitale  ed  un timestemp al messaggio in uscita 

 • org.apache.ws.security.crypto.provider=org.apache.ws.security.components.crypto.Merli:  è  la 

classe del motore di cifratura utilizzato  • org.apache.ws.security.crypto.merlin.keystore.type = jks: è il tipo di keystore 

 

  

   SPICCA: Manuale  di  installazione e configurazione PDD 

v.1.0 del 25/08/2009  Pagina 36 

  

 • user =wss4jCertDSA: è  l'identificativo della  chiave privata, nell'ambito del  keystore, da utilizzare 

per la firma  • signatureKeyIdentifier=DirectReference                                                  

 

  

   SPICCA: Manuale  di  installazione e configurazione PDD 

v.1.0 del 25/08/2009  Pagina 37 

  

Configurazione dell’Handler WsDoAllReceiver per la PDD Applicativa (Contesto Server / Flusso Request) 

   Descrizione dei parametri dell’Handler  • action = Signature Timestamp: è il parametro che determina l'azione effettuata dagli handler WSS. 

In  particolare  specificando  “Signature  Timestamp”  l’handler  verificherà  la  firma  digitale  ed  il timestemp del messaggio ricevuto  

• org.apache.ws.security.crypto.provider=org.apache.ws.security.components.crypto.Merli:  è  la classe del motore di cifratura utilizzato 

 • org.apache.ws.security.crypto.merlin.keystore.type = jks: è il tipo di keystore  • org.apache.ws.security.crypto.merlin.file = c://pdd//security//keystore//wss4j.keystore: è  il  file 

del keystore  • org.apache.ws.security.crypto.merlin.keystore.password" = "security": è la password del keystore 

   

 

 

   SPICCA: Manuale  di  installazione e configurazione PDD 

v.1.0 del 25/08/2009  Pagina 38 

  

  4.5.2 Token SAML non firmato 

 Configurazione dell’Handler WSDoAllSender per la PDD delegata (Contesto Client / Flusso Request) 

   Descrizione dei parametri dell’Handler  • org.apache.ws.security.saml.issuerClass  =  org.apache.ws.security.saml.SAMLIssuerImpl:  è  la 

classe che genera l’asserzione SAML  

• org.apache.ws.security.saml.issuer  = “PDDASLNA1”: è l’ ”ISSUER” dell’asserzione SAML.    • org.apache.ws.security.saml.authenticationMethod  =  password :  è  il  meccanismo 

d’autenticazione utilizzato dal Subject dell’asserzione SAML   • org.apache.ws.security.saml.confirmationMethod = senderVouches : è  il metodo di utilizzato per 

la verifica del contenuto dell’Asserzone SAML. Sender Vouches  indica che  l’Issuer si fa da garante per  la  verifica  del  Subject.  Il  ricevitore  dell’asserzione  SAML,  che  ha  stabilito  una  relazione  di fiducia con l’Issuer, si fida di quanto affermato dal’Issuer. 

 

 

  

   SPICCA: Manuale  di  installazione e configurazione PDD 

v.1.0 del 25/08/2009  Pagina 39 

  

• org.apache.ws.security.saml.subjectNameId.name: è  l’identificativo del Subject nell’ambito di un dominio. 

 • action = SAMLTokenUnsigned: è il parametro che determina l'azione effettuata dagli handler WSS. 

In particolare specificando SAMLTokenUnsigned genererà un Token SAML non firmato    Configurazione dell’Handler WsDoAllReceiver per la PDD Applicativa (Contesto Server / Flusso Request) 

    Descrizione dei parametri dell’Handler  • action SAMLTokenUnsigned: è il parametro che determina l'azione effettuata dagli handler WSS. In 

particolare  specificando  SAMLTokenUnsigned  l’Handler  verificherà  l’esistenza  di  un  Token  SAML non firmato nel messaggio ricevuto 

     

 

  

   SPICCA: Manuale  di  installazione e configurazione PDD 

v.1.0 del 25/08/2009  Pagina 40 

  

Token SAML non firmato –  PDD Issuer di Asserzioni relative ad utenti autenticati sul NAG  

Configurazione dell’Handler WSDoAllSender per la PDD delegata (Contesto Client / Flusso Request) 

    Descrizione dei parametri dell’Handler  • action SAMLTokenUnsignedForShib  è il parametro che determina l'azione effettuata dagli handler 

WSS.  In particolare specificando SAMLTokenUnsignedForShib    l’handler genererà un Token SAML non firmato relativo all’utente autenticatosi sul NAG  

• org.apache.ws.security.saml.issuerClass  = com.enterpriseda.sa.shibintegration.ws.saml.SAMLShibIssuerImpl:  è  la  classe  che  genera l’asserzione SAML. In questo caso le informazioni relative all’utente autenticatosi sono ottenute dai moduli d’integrazione con Shibboleth  

• org.apache.ws.security.saml.issuer  = “PDDASLNA1”: è l’ ”ISSUER” dell’asserzione SAML.          

 

  

   SPICCA: Manuale  di  installazione e configurazione PDD 

v.1.0 del 25/08/2009  Pagina 41 

  

 Configurazione dell’Handler WsDoAllReceiver per la PDD Applicativa (Contesto Server / Flusso Request) 

   Descrizione dei parametri dell’Handler  • action SAMLTokenUnsigned: è il parametro che determina l'azione effettuata dagli handler WSS. In 

particolare  specificando  SAMLTokenUnsigned  l’Handler  verificherà  l’esistenza  di  un  Token  SAML non firmato nel messaggio ricevuto 

                 

 

  

   SPICCA: Manuale  di  installazione e configurazione PDD 

v.1.0 del 25/08/2009  Pagina 42 

  

  

4.5.3 Token SAML firmato  

Configurazione dell’Handler WSDoAllSender per la PDD delegata (Contesto Client / Flusso Request) 

   Descrizione dei parametri dell’Handler  • org.apache.ws.security.saml.issuerClass  =  org.apache.ws.security.saml.SAMLIssuerImpl:  è  la 

classe che genera l’asserzione SAML  

• org.apache.ws.security.saml.issuer  = “PDDASLNA1”: è l’ ”ISSUER” dell’asserzione SAML.    • org.apache.ws.security.saml.authenticationMethod  =  password :  è  il  meccanismo 

d’autenticazione utilizzato dal Subject dell’asserzione SAML   • org.apache.ws.security.saml.confirmationMethod = senderVouches : è  il metodo di utilizzato per 

la verifica del contenuto dell’Asserzone SAML. Sender Vouches  indica che  l’Issuer si fa da garante 

 

  

   SPICCA: Manuale  di  installazione e configurazione PDD 

v.1.0 del 25/08/2009  Pagina 43 

  

per  la  verifica  del  Subject.  Il  ricevitore  dell’asserzione  SAML,  che  ha  stabilito  una  relazione  di fiducia con l’Issuer, si fida di quanto affermato dal’Issuer. 

 • org.apache.ws.security.saml.subjectNameId.name: è  l’identificativo del Subject nell’ambito di un 

dominio.  • action = SAMLTokenSigned: è il parametro che determina l'azione effettuata dagli handler WSS. In 

particolare specificando SAMLTokenUnsigned genererà un Token SAML firmato   • org.apache.ws.security.saml.issuer.key.name  = wss4jCert:  è  l'identificativo  della  chiave  privata, 

nell'ambito del keystore, da utilizzare per la firma    

• org.apache.ws.security.saml.issuer.key.password = security: è la password della chiave provata da utilizzare per la firma  

  

• org.apache.ws.security.crypto.provider=org.apache.ws.security.components.crypto.Merli:  è  la classe del motore di cifratura utilizzato  

• org.apache.ws.security.crypto.merlin.keystore.type = jks: è il tipo di keystore  • org.apache.ws.security.crypto.merlin.keystore.password" = "security": è la password del keystore  • org.apache.ws.security.crypto.merlin.file = c://pdd//security//keystore//wss4j.keystore: è  il  file 

del keystore  • signatureKeyIdentifier=DirectReference                             

 

  

   SPICCA: Manuale  di  installazione e configurazione PDD 

v.1.0 del 25/08/2009  Pagina 44 

  

Configurazione dell’Handler WsDoAllReceiver per la PDD Applicativa (Contesto Server / Flusso Request) 

   Descrizione dei parametri dell’Handler  • org.apache.ws.security.crypto.provider=org.apache.ws.security.components.crypto.Merli:  è  la 

classe del motore di cifratura utilizzato  • org.apache.ws.security.crypto.merlin.keystore.type = jks: è il tipo di keystore  • org.apache.ws.security.crypto.merlin.file = c://pdd//security//keystore//wss4j.keystore: è  il  file 

del keystore  • org.apache.ws.security.crypto.merlin.keystore.password" = "security": è la password del keystore  • action  =  Signature  SAMLTokenUnsigned:  è  il  parametro  che  determina  l'azione  effettuata  dagli 

handler WSS.  In particolare  specificando “Signature SAMLTokenUnsigned”  l’handler verificherà  la firma digitale e l’esistenza del Token SAML nel messaggio ricevuto 

 

 

  

   SPICCA: Manuale  di  installazione e configurazione PDD 

v.1.0 del 25/08/2009  Pagina 45 

  

 Token SAML firmato – PDD Issuer di Asserzioni relative ad utenti autenticati sul NAG  

Configurazione dell’Handler WSDoAllSender per la PDD delegata (Contesto Client / Flusso Request) 

   Descrizione dei parametri dell’Handler 

 • org.apache.ws.security.saml.issuer  = “PDDASLNA1”: è l’ ”ISSUER” dell’asserzione SAML.     • org.apache.ws.security.saml.issuer.key.name  = wss4jCert:  è  l'identificativo  della  chiave  privata, 

nell'ambito del keystore, da utilizzare per la firma    

• org.apache.ws.security.saml.issuer.key.password = security: è la password della chiave provata da utilizzare per la firma  

 • org.apache.ws.security.crypto.provider=org.apache.ws.security.components.crypto.Merli:  è  la 

classe del motore di cifratura utilizzato  

• org.apache.ws.security.crypto.merlin.keystore.type = jks: è il tipo di keystore 

 

  

   SPICCA: Manuale  di  installazione e configurazione PDD 

v.1.0 del 25/08/2009  Pagina 46 

  

 • action SAMLTokenSignedForShib   è  il parametro  che determina  l'azione effettuata dagli handler 

WSS. In particolare specificando SAMLTokenSignedForShib  l’handler genererà un Token SAML non firmato relativo all’utente autenticatosi sul NAG  

• org.apache.ws.security.crypto.merlin.keystore.password" = "security": è la password del keystore  • org.apache.ws.security.crypto.merlin.file = c://pdd//security//keystore//wss4j.keystore: è  il  file 

del keystore  • signatureKeyIdentifier=DirectReference  • org.apache.ws.security.saml.issuerClass  = 

com.enterpriseda.sa.shibintegration.ws.saml.SAMLShibIssuerImpl:  è  la  classe  che  genera l’asserzione SAML. In questo caso le informazioni relative all’utente autenticatosi sono ottenute dai moduli d’integrazione con Shibboleth 

     

 

  

   SPICCA: Manuale  di  installazione e configurazione PDD 

v.1.0 del 25/08/2009  Pagina 47 

  

Configurazione dell’Handler WsDoAllReceiver per la PDD Applicativa (Contesto Server / Flusso Request) 

   Descrizione dei parametri dell’Handler 

 • org.apache.ws.security.crypto.provider=org.apache.ws.security.components.crypto.Merli:  è  la 

classe del motore di cifratura utilizzato  • org.apache.ws.security.crypto.merlin.keystore.type = jks: è il tipo di keystore  • org.apache.ws.security.crypto.merlin.file = c://pdd//security//keystore//wss4j.keystore: è  il  file 

del keystore  • org.apache.ws.security.crypto.merlin.keystore.password" = "security": è la password del keystore  • action  =  Signature  SAMLTokenUnsigned:  è  il  parametro  che  determina  l'azione  effettuata  dagli 

handler WSS.  In particolare  specificando “Signature SAMLTokenUnsigned”  l’handler verificherà  la firma digitale e l’esistenza del Token SAML nel messaggio ricevuto 

 

 

 

   SPICCA: Manuale  di  installazione e configurazione PDD 

v.1.0 del 25/08/2009  Pagina 48 

  

  

4.5.4 Cifratura  

Configurazione dell’Handler WSDoAllSender per la PDD delegata (Contesto Client / Flusso Request) 

   Descrizione dei parametri dell’Handler 

 • org.apache.ws.security.crypto.provider=org.apache.ws.security.components.crypto.Merlin:  è  la 

classe del motore di cifratura utilizzato  • org.apache.ws.security.crypto.merlin.keystore.type = jks: è il tipo di keystore  • org.apache.ws.security.crypto.merlin.file = c://pdd//security//keystore//wss4j.keystore: è  il  file 

del keystore  • org.apache.ws.security.crypto.merlin.keystore.password" = "security": è la password del keystore  • action = Encrypt: è il parametro che determina l'azione effettuata dagli handler WSS. In particolare 

specificando  “Encrypt”  l’handler  cifrerà  il  body  del  messaggio  utilizzando  la  chiave  pubblica dell’utente specificato con il parametro  

 

  

   SPICCA: Manuale  di  installazione e configurazione PDD 

v.1.0 del 25/08/2009  Pagina 49 

  

 • encryptionUser: è l’alias nel keystore della chiave pubblica utilizzata per cifratura   • encryptionSymAlgorithm: specifica l’algoritmo utilizzato per la cifratura  

  

Configurazione dell’Handler WsDoAllReceiver per la PDD Applicativa (Contesto Server / Flusso Request) 

    Descrizione dei parametri dell’Handler  • org.apache.ws.security.crypto.provider=org.apache.ws.security.components.crypto.Merli:  è  la 

classe del motore di cifratura utilizzato  • org.apache.ws.security.crypto.merlin.keystore.type = jks: è il tipo di keystore  • org.apache.ws.security.crypto.merlin.file = c://pdd//security//keystore//wss4j.keystore: è  il  file 

del keystore  

 

  

   SPICCA: Manuale  di  installazione e configurazione PDD 

v.1.0 del 25/08/2009  Pagina 50 

  

• org.apache.ws.security.crypto.merlin.keystore.password" = "security": è la password del keystore  • action = Encrypt: è il parametro che determina l'azione effettuata dagli handler WSS. In particolare 

specificando  “Encrypt”  l’handler  cifrerà  il  body  del  messaggio  utilizzando  la  chiave  pubblica dell’utente specificato con il parametro  

 • org.apache.ws.security.privatekey.password: nell’ambito del keystore, è  la password della chiave 

privata che sarà utilizzata per la decifratura.  

 

  

   SPICCA: Manuale  di  installazione e configurazione PDD 

v.1.0 del 25/08/2009  Pagina 51 

  

 4.6 Parametri di configurazione della PDD EDA 

 

ASAP_FACTORY_URI   http://localhost:8080/axis/services/FactoryProxy  

ASAP_INSTANCE_URI    http://localhost:8080/axis/services/InstanceProxy  

ASAP_OBSERVER_URI    http://localhost:8080/axis/services/ObserverProxy  

AXIS_CLIENT_CONFIG_FILE    /home/pdd/pdd/config/client‐config.wsdd  

CODICE_PA    PDDEDA  

CODICE_PDD    PDD  

DMBS    POSTGRES  

EPROXY_CALLBACK_URI    http://localhost:8080/axis/services/EProxy  

EPROXY_URI    http://localhost:8080/axis/services/EProxy  

INDIRIZZO_TELEMATICO    http://localhost:8080/  

IPROXY_CALLBACK_URI    http://localhost:8080/axis/services/IProxy  

IPROXY_URI    http://localhost:8080/axis/services/IProxy  

LOGGER_EPROXY    pdd  

LOGGER_HANDLER    pdd  

LOGGER_IPROXY    pdd  

LOGGER_PLATFORM    pdd  

LOGON_URI    http://localhost:8080/axis/JWSServices/JWSAccessManager.jws  

PUBLISH_SUBSCRIBE_URI    http://localhost:8080/toset  

TIPO_PA    CODICE_ASL  

PORTA_DELEGATA_ASINC_ASI

M_DEFAULT   PortaDelegataAsincronaSimmetricaDefault  

 

  

   SPICCA: Manuale  di  installazione e configurazione PDD 

v.1.0 del 25/08/2009  Pagina 52 

  

java.naming.factory.initial    org.jboss.naming.HttpNamingContextFactory  

CODICE_PA_PASSWORD    password 

java.naming.provider.url    http://localhost:8080/invoker/JNDIFactory  

java.naming.factory.url.pkgs    org.jboss.naming.client  

MBEAN_SERVICE_EDA_COM    eda.com:service= PDD_Startup  

USER_KEY    wss4jCertDSA  

PASSWORD_KEY    security  

PASSWORD_PKCS7    123456  

FILE_KS_PKCS7    c:/pdd/security/keystore/farsa.keystore  

MQ_ENGINE    ACTIVE_MQ  

PS_ADAPTER_URI  http://10.2.52.56:8080/axis/services/PSJMSAdapter  

egov.pre.validator.handler.class com.enterpriseda.pdd.level1.handler.common.CheckServizioAzione

Handler  

egov.soap.deep.check.enabled  true 

egov.soap.fault.send.detail false 

 

 

 

 

 

 

 

 

 

 

 

 

 

  

   SPICCA: Manuale  di  installazione e configurazione PDD 

v.1.0 del 25/08/2009  Pagina 53 

  

5 Monitoraggio 

 

5.1 Transazioni attive Nel Database sono presenti le transazioni attive nella tabella “Transazioni”. 

È  inoltre  possibile  visualizzare  il  dettaglio  di  ogni  transazione  e  visualizzare  l’intera  busta  e‐gov 

transitata. 

 

5.2 Storico transazioni Nel Database sono presenti lo storico delle transazioni nella tabella “Storico_Transazioni”. 

 

È  inoltre  possibile  visualizzare  il  dettaglio  di  ogni  transazione  e  visualizzare  l’intera  busta  e‐gov 

transitata. 

 

  

   SPICCA: Manuale  di  installazione e configurazione PDD 

v.1.0 del 25/08/2009  Pagina 54 

  

6 Configurazione certificati 

 

 

6.1 Creazione di KeyStore keytool  ‐genkey  ‐keystore <nomeFileKeyStore>  ‐alias <alias della chiave>  ‐keyalg RSA  ‐keysize 2048 –

keypass <passwordDellaChiave> 

Viene creato un keystore nella home directory dell’utente. 

 

6.2 Import di un certificato nel KeyStore keytool ‐import ‐alias <alias del server> ‐trustcacerts ‐file certreq_signed.pem 

 

 

6.3 Import di una Certification Authority nel KeyStore keytool ‐import ‐alias <alias della ca> ‐trustcacerts ‐file certreq_signed.pem 

 

 

6.4 Configurazione Trasporto over HTTPS  Per poter effettuare porte delegate che possano invocare end‐point in https, è necessario configurare 

un keystore con tutte le chiavi pubbliche del server in https. 

Le  informazioni  necessarie  devono  essere  presenti  nel  componente  di  tipo  PROPERTIES  di  nome: 

HTTPS_CLIENT_PROPS configurato tra i componenti di sistema. 

L’elemento PROPERTIES deve avere le seguenti proprietà configurate: 

 

 

  

   SPICCA: Manuale  di  installazione e configurazione PDD 

v.1.0 del 25/08/2009  Pagina 55 

  

 

6.5 Configurare JBOSS in HTTPS Quest’  attività  non  è  richiesta  per  l’installazione  della  PDD.  Viene  riportata  solo  come  guida  per 

l’amministratore, qualora si desiderasse configurare JBOSS in https: 

 

- Creare il certifato SSL che sarà usato per l'autenticazione e la codifica dei dati. Per generare il  crtificato 

è  possibile  utilizzare  la  "Keytool"  utility  fornita  dalla  j2sdh  1.4+.  Il  tool  si  trova  nella  directory 

"%JAVA_HOME%\bin". Per eseguire il tool digitare dal prompt il seguente comando: 

%JAVA_HOME%\bin\keytool ‐genkey ‐keyalg RSA (dove RSA è l'algoritmo di cifratura utilizzato). 

Il  comando  creerà  un  file  ".keystore"  nella  home  directory  dell'utente.  Ricordare  di  utilizzare  come 

password della keystore la stessa password che si utilizzarà all'interno di jboss. 

 

- Modificare  "%Jboss‐Home%\server\default\deploy\jbossweb‐tomcat50.sar\server.xml",  all'interno 

dell'elemento <service> decommentare la parte relativa al Connector SSL/TSL. 

Nell'elemento  <Connector...>  decommentato  settare  l'attributo  "keystoreFile"  con  il  file  relativo  alla 

chiave da me generata in precedenza, e settare l'attributo "keystorePass" con la password utilizzata per 

generare il keystore. 

 

- Riavviare JBOSS e verificare la possibilità di accedere a all'applicazione con il supporto SSL. Per esempio, 

provare a connettersi al seguente url, se non sono state modificare  le  impostazioni di default relative 

alla porta, "https://localhost:8443/".