cancel
Showing results for 
Search instead for 
Did you mean: 

encrypt-decrypt xml payload (PI 7.0 vs 7.1)

0 Kudos

Hi Experts.

I'm working in a web service that receive an encrypted xml payload via SOAP. The problem is that the xml that I'm receiving is partially encryptad.

I'm using a PI 7.0 communication channel type SOAP to decrypt the info, but it isn't supported because PI 7.0 SOAP Comm Channel only can decrypt the hole message, not only a part of that!!!!!!

My question is if PI 7.1 SOAP Comm Chanel can decrypt only a part of xml messages instead of a hole message like PI 7.0 is doing??

Thanks in advance.

Accepted Solutions (0)

Answers (2)

Answers (2)

0 Kudos

Hi again.

Thanks a lot Baskar for your answer but I thinks that the envelope isn't my problem.

I'm receiving a payload that has only one encrypted node. One example could be:

<Transmisiones>

<TransmisionDatos>

<DatosGenericos>

<Emisor>

<NifEmisor>Qnif_Example</NifEmisor>

<NombreEmisor>AEAT</NombreEmisor>

</Emisor>

<Solicitante>

<IdentificadorSolicitante>ID_example</IdentificadorSolicitante>

<NombreSolicitante>Junta Castilla-La Mancha</NombreSolicitante>

<Finalidad>PROC</Finalidad>

<Consentimiento>Si</Consentimiento>

</Solicitante>

<Titular>

<TipoDocumentacion>NIF</TipoDocumentacion>

<Documentacion>documentacion_Example</Documentacion>

</Titular>

<Transmision>

<CodigoCertificado>AEAT103I</CodigoCertificado>

<IdSolicitud>test</IdSolicitud>

<IdTransmision>test</IdTransmision>

<FechaGeneracion/>

</Transmision>

</DatosGenericos>

<ns2:DatosEspecificos >

<xenc:EncryptionMethod Algorithm = "http://www.w3.org/2001/04/xmlenc#aes128-cbc" xmlns:xenc = "http://www.w3.org/2001/04/xmlenc#"/>

<ds:KeyInfo xmlns:ds = "http://www.w3.org/2000/09/xmldsig#">

<wsse:SecurityTokenReference xmlns:wsse = "http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd">

<wsse:Reference URI = "test"/>

</wsse:SecurityTokenReference>

</ds:KeyInfo>

<xenc:CipherData xmlns:xenc = "http://www.w3.org/2001/04/xmlenc#">

<xenc:CipherValue xmlns:xenc = "http://www.w3.org/2001/04/xmlenc#">

7eNid3oVoNLlUcAAjUTZItHkDoPRpe5oSPc1tB/SZyVpi49VhF9Yrv0A0uvNmazIsrtbaahRAvB+

Go8KyHNRxsy410lbhFpzb9gqgqNTEKvGFGgDgyc0kpokhVgPfHHOmcmdHxBAGwf5vzUuPEcNw0J+

z9kVMRKZK31HndrOXSoiXLtHHkUqTwo4Q2rNlC3gZQKmAawDlFJPiAmUxa4ejeZWWxrnLadC5BD+

x=+

</xenc:CipherValue>

So, the xml only has one encrypted node: CIPHER VALUE.

In PI 7.0 the SOAP comm channel cannot decypher that kind of payload because that only has a part of payload encrypted instead of a whole encrypted payload.

My question is if using PI 7.1 this problems will be solved in SOAP comm channel. Or I need to upgrade to PI 7.3??

thanks a lot

baskar_gopalakrishnan2
Active Contributor
0 Kudos

If you configure the adapter to encrypt or decrypt it will do for the entire(whole) payload. You might have an option to use "Do not use envelope' to avoid using the soap envelope. This is same for both the version.