Página 1 de 18
Duda de Como Autentificarse en los WebService de Descarga de los XML
Publicado: Mar Ago 07, 2018 4:29 pm
por Halcon Divino
COLEGAS
AYUDA
Ya leí la documentación para usar los WebService de descarga masivo de los XML.
Pero no le entiendo como hacerle para AUTENTIFICARME usando la eFirma y con eso se pueda generar el Token y la Signature para pasarlos como paramentaros en el WebService.
Alguien que pudiera postear algún PROGRAMA ejemplo de como hacer la autentificacion.
La verdad estoy en pañales en este tema.
Saludos.
Re: Duda de Como Autentificarse en los WebService de Descarga de los XML
Publicado: Mar Ago 07, 2018 4:59 pm
por maildejuan
creí que fortiz a lo mejor ya tendría algo y partir de ahí para desarrollar los procesos de mi empresa, pero no encontré su cuenta en Github ... saben si la cerro? ...
saludos
Re: Duda de Como Autentificarse en los WebService de Descarga de los XML
Publicado: Mar Ago 07, 2018 6:03 pm
por Halcon Divino
Ni idea si la cerro
La verdad es que si apoyaba fortiz con sus aportes.
Deja ver si le pudiera mandar un mensaje por aquí en el foro.
Re: Duda de Como Autentificarse en los WebService de Descarga de los XML
Publicado: Jue Ago 09, 2018 4:15 pm
por Dado
Estoy en un grupo exclusivo de comunicacion entre PAC's (psss, VIP!!! je je je)
Y entre ellos han comentado que NINGUNO de los registrados ha podido consumir el Web Service de descarga y mucho menos obtener el wsdl para implementarlo
Asi que nosotros los mortales usuarios comunes vamos a tener dificultad para implementarlo
Re: Duda de Como Autentificarse en los WebService de Descarga de los XML
Publicado: Vie Ago 10, 2018 2:15 pm
por andresmaya
Buen día, tampoco he podido lograrme autenticar pero tengo un código que ya genera la parte del WSA (Addressing) y WSSE (Security).
Lo que no tengo muy claro es cual es el XML que se debe firmar, es decir, el string inicial, al parecer hay que hacer una llamada al método Autentica sin WSDL sino con el action solamente y luego ese XML de SOAP firmarlo, he intentato eso pero sin éxito.
Les comparto mis solicitudes como las genera mi script donde el SIGNED REQUEST es muy similar al que pone el SAT en su manual:
ORIGNAL REQUEST: (es el que genero al inicio para luego este firmarlo)
Código: Seleccionar todo
<?xml version="1.0" encoding="UTF-8"?>
<s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" s:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
<s:Body>
<Autentica/>
</s:Body>
</s:Envelope>
SIGNED REQUEST: (incluye el primer request firmado mediante certificados x.509 y con addressing)
Código: Seleccionar todo
<?xml version="1.0" encoding="UTF-8"?>
<s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:a="http://schemas.xmlsoap.org/ws/2004/08/addressing" s:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
<s:Header>
<a:Action>https://cfdidescargamasivasolicitud.clouda.sat.gob.mx/Autenticacion/#Autentica</a:Action>
<a:To>https://cfdidescargamasivasolicitud.clouda.sat.gob.mx/Autenticacion/Autenticacion.svc</a:To>
<a:MessageID>uuid:e0461b44-3654-712a-ab90-38bbacbfdb02</a:MessageID>
<o:Security xmlns:o="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd" s:mustUnderstand="1">
<o:BinarySecurityToken xmlns:u="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd" EncodingType="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-soap-message-security-1.0#Base64Binary" u:Id="pfx88bca128-1598-2383-da18-3263f3841890" ValueType="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-x509-token-profile-1.0#X509v3">MIIGez...==</o:BinarySecurityToken>
<ds:Signature xmlns:ds="http://www.w3.org/2000/09/xmldsig#">
<ds:SignedInfo>
<ds:CanonicalizationMethod Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#"/>
<ds:SignatureMethod Algorithm="http://www.w3.org/2000/09/xmldsig#rsa-sha1"/>
<ds:Reference URI="#pfxffb919d0-65f0-959e-54c5-d0b2128ef894">
<ds:Transforms>
<ds:Transform Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#"/>
</ds:Transforms>
<ds:DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1"/>
<ds:DigestValue>zlT6N9URycOqyKrI//9qx307jiQ=</ds:DigestValue>
</ds:Reference>
<ds:Reference URI="#pfx767dca7d-7335-5e0f-af25-2c3693ed93a4">
<ds:Transforms>
<ds:Transform Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#"/>
</ds:Transforms>
<ds:DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1"/>
<ds:DigestValue>7G1OMrRL2NW8TXliY96gQVVGDmk=</ds:DigestValue>
</ds:Reference>
</ds:SignedInfo>
<ds:SignatureValue>UYmrDgEytnjd6Y...szew==</ds:SignatureValue>
<ds:KeyInfo>
<o:SecurityTokenReference>
<o:Reference ValueType="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-x509-token-profile-1.0#X509v3" URI="#pfx88bca128-1598-2383-da18-3263f3841890"/>
</o:SecurityTokenReference>
</ds:KeyInfo>
</ds:Signature>
<u:Timestamp xmlns:u="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd" u:Id="pfxffb919d0-65f0-959e-54c5-d0b2128ef894">
<u:Created>2018-08-07T21:04:43Z</u:Created>
<u:Expires>2018-08-07T21:09:43Z</u:Expires>
</u:Timestamp>
</o:Security>
</s:Header>
<s:Body xmlns:u="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd" u:Id="pfx767dca7d-7335-5e0f-af25-2c3693ed93a4">
<Autentica/>
</s:Body>
</s:Envelope>
NOTA: he truncado/resumido el Signature y BinaryToken para que sea mas digerible leerlo.
Halcon Divino, también me encuentro en MTY si te interesa podríamos trabajar en conjunto esto o reunirnos para agilizarlo si te parece bien.
Re: Duda de Como Autentificarse en los WebService de Descarga de los XML
Publicado: Mar Ago 14, 2018 3:40 pm
por crono81
Tengo información de un acceso, que yo uso, es el siguiente (aclaro que no es para el web service, sino para otro servicio del sat):
Código: Seleccionar todo
cadena := tokenuuid + '|' + Rfc + '|' + NoCert;//cadena se guarda en el archivo c:\cadena.txt
//Esta cadena se firma con sha1 y se codifica dos veces a base64 (no se porque)
firma := openssl dgst -sha1 -sign c:\llave.key -passin pass:password c:\cadena.txt | openssl enc -base64 -A | openssl enc -base64 -A
//El tokenuuid se codifica en base64 (solo el token)
//tokenuuid se guarda en c:\tokenuuid.txt
token := openssl enc -base64 -A -in c:\tokenuuid.txt
//Se concatena el token codificado junto con la firma
firma := token + '#' + firma;
//firma se guarda en c:\firma.txt
//esta concatenacion se codifica nuevamente a base64 (creo que tienen una obsesión con esto)
firma := openssl enc -base64 -A -in c:\firma.txt;
//Ésta última codificación se usa para acceder al sitio
A ver si sirve de algo
Re: Duda de Como Autentificarse en los WebService de Descarga de los XML
Publicado: Mar Ago 14, 2018 3:56 pm
por Halcon Divino
CRONO81
Pero como ???
El ejemplo que estas posteando es solo como un ejemplo para tomarlo de BASE de como generas el TOKEN y la Firma o Signature para otro servico web que no es la descarga de los XML del SAT .
Es lo que te estoy entendiendo .
Es correcto ????
Re: Duda de Como Autentificarse en los WebService de Descarga de los XML
Publicado: Mar Ago 14, 2018 4:05 pm
por crono81
Si, es para loguearse en una pagina. El token lo proporciona la propia pagina.
En efecto, es para tomarlo como base
El tokenuuid es un dato similar a este:
NWFhM2ZlOGMtNjY0My00YTc4LWJlMGYtZjA2MDI0YTBjMjFm
No se como lo generan
EDIT:
Pudiera ser la fecha codificada en base64 (ya ven que casi no les gusta hacerlo)
Re: Duda de Como Autentificarse en los WebService de Descarga de los XML
Publicado: Mié Ago 15, 2018 7:55 am
por Rodrigo
Buenos días, tambien quisiera cooperar, tendrán la url del manual o documentación del SAT?
Re: Duda de Como Autentificarse en los WebService de Descarga de los XML
Publicado: Mié Ago 15, 2018 9:39 am
por Dado
Rodrigo escribió:Buenos días, tambien quisiera cooperar, tendrán la url del manual o documentación del SAT?
Aqui lo publico el SAT
Checa el sidebar derecho donde dice "Contenidos Relacionados"