Bienvenido a Facturas y Respuestas.

Esperamos que encuentre la respuesta a su pregunta. Y si no, puede formularla para que los expertos de la comunidad la respondan.

Preguntar

Este blog es creado y administrado por:

Copyright - 2019

0 votos
preguntado por en Generalidades
Pide los siguientes datos, según la normatividad

Username = el identificador del software

Password =  la contraseña designada para el software encriptada bajo SHA-256

Pero no me funciona, que mas debo hacer en el password, o tiene novedad la plataforma de la dian.

Me genera siempre: ERROR: The security token could not be authenticated or authorized; nested exception is org.apache.ws.security.WSSecurityException: The security token could not be authenticated or authorized

Ya el software esta registrado y el password es de 10 digitos.

2 Respuestas

0 votos
respondido por
Buenas tardes,

Tengo el mismo problema, lo puso resolver?. Muchas gracias.
0 votos
respondido por

Hola, adicional al password encriptado y el software id, es necesario un nonce y la fecha en un formato especifico.

Segun la especificacion un nonce es " a random value that the sender creates to include in each UsernameToken that it sends." . Por ejemple en PHP se genera un nonce y a la fecha valida de la siguiente manera: 
 

$nonce = base64_encode(uniqid('',true));

$created = Carbon::now()->format('c');

A continuacion un ejemplo de un security tag funcional.

<SOAP-ENV:Header>
 

<ns2:Security> 

<ns2:UsernameToken>

<ns2:Username>5654775-ab66-87l9-90eb-8eebcdju6ge6</ns2:Username>              

                        <ns2:Password>876fb18eb678147475s3hf4s83099ed9d5a4002b889b5b13a4c6ba319e2fa3536lb</ns2:Password>

<ns2:Nonce>NWMyMzY5YTNkODIxMzcuODI4Mjk4Mjc=</ns2:Nonce>

<ns2:Created>2018-12-26T06:44:35-05:00</ns2:Created></ns2:UsernameToken>

</ns2:Security>

</SOAP-ENV:Header>
 

comentado por
el noce lo puedes crear asi    $nonce    = base64_encode(rand());
...