Se agrego coves

This commit is contained in:
2025-08-06 14:28:34 -06:00
parent 543a3558ca
commit ea40a0c74e
3 changed files with 34 additions and 26 deletions

View File

@@ -934,13 +934,19 @@ async def get_soap_cove(credenciales, response_service, soap_controller, cove, i
# Cadena original que vas a firmar
cadena_original = f"|{username}|{cove['numero_cove']}|"
# Obtener certificado base64 y firma
cer = rest_controller.get_cer(credenciales['id'])
# Obtener certificado base64 y firma (await async calls)
cer = await rest_controller.get_cer(credenciales['id'])
if cer is None:
logger.error(f"No se pudo obtener el certificado (cer) para credencial ID: {credenciales['id']}")
raise HTTPException(status_code=500, detail="No se pudo obtener el certificado para firmar el COVE")
certificado = base64.b64encode(cer).decode('utf-8')
# Obtener la key como binario y guardarla en un archivo temporal
import tempfile
key_bytes = rest_controller.get_key(credenciales['id'])
key_bytes = await rest_controller.get_key(credenciales['id'])
if key_bytes is None:
logger.error(f"No se pudo obtener la llave privada (key) para credencial ID: {credenciales['id']}")
raise HTTPException(status_code=500, detail="No se pudo obtener la llave privada para firmar el COVE")
with tempfile.NamedTemporaryFile(delete=False) as tmp_key_file:
tmp_key_file.write(key_bytes)
tmp_key_path = tmp_key_file.name