1)Nel caso in cui nell'header WS-Security venga impostato, da una porta
delegata (nello specifico mi è capitato con la porta delegata Microsoft) ,
l'attributo mustUnderstand="1" e non sia presente l'"actor" l'architettura che
abbiamo implementato nella gestione della WS-Security manda in errore Axis
perché pensa che debba gestire l'header WS-Security.
L'Handler Axis allegato, da inserire in testa al servizio di porta applicativa
permette di bypassare il problema segnalando come "processed" l' header WSS.
Se ne può provare l'efficacia configurando la WS-Security di una porta delegata
senza actor e con mustUnderstand="true".
2a)Porta di dominio Oracle. Ho cercato di testarla in entrambi i versi ma sono
arenato al fatto che il processo di controllo della firma si blocca perché il
digest calcolato da WSS4J sul tag "Timestamp" di WS-Security è diverso da
quello calcolato da Oracle. La cosa strana è che i digest su "Body" ed
"Intestazione" coincidono e gli algoritmi sono sempre gli stessi in teoria.
Qualche idea su come calcolare il digest in altro modo per capire chi ha
ragione?
2b)orta di dominio Microsoft. Ho provato per ora solo il verso PD Microsoft ->
PA OpenSPCoop ma dopo aver risolto il problema del punto 1) sul
"mustUnderstand", sono fermo ad un fallimento del controllo della firma.
Ciao
Luciano
WSBypassMustUnderstand.java
Description: WSBypassMustUnderstand.java
server-config.wsdd
Description: server-config.wsdd
|