No genera la planilla, Revisando en el AppJob me muestra el siguiente mensaje: at System.Security.Cryptography.ProtectedData.Unprotect(Byte[] encryptedData, Byte[] optionalEntropy, DataProtectionScope scope) at Microsoft.Practices.EnterpriseLibrary.Security.Cryptography.SymmetricCryptographer.Decrypt(Byte[] encryptedText) at Microsoft.Practices.EnterpriseLibrary.Security.Cryptography.SymmetricAlgorithmProvider.Decrypt(Byte[] ciphertext) at Microsoft.Practices.EnterpriseLibrary.Security.Cryptography.Cryptographer.DecryptSymmetric(ISymmetricCryptoProvider provider, String ciphertextBase64) at Aseinfo.VH4.WindowsServices.ApplicationJobs.IniciaFlujoEntidadJob.Execute(JobExecutionContext context) in c:BuildAgentwork89066541112bb801VH4WindowsServicesApplicationJobsWindowsServiceApplicationJobsIniciaFlujoEntidadJob.cs:line 39 2016-10-05 10:50:25,900 [AppJobWinServiceScheduler_Worker-5] INFO Aseinfo.VH4.WindowsServices.ApplicationJobs.IniciaFlujoEntidadJob - Iniciando Job para Iniciar Flujo 2016-10-05 10:50:25,902 [AppJobWinServiceScheduler_Worker-5] ERROR Aseinfo.VH4.WindowsServices.ApplicationJobs.IniciaFlujoEntidadJob - Hubo un error grave de configuración al iniciar el job de Iniciar Flujo System.Security.Cryptography.CryptographicException: Key not valid for use in specified state. at System.Security.Cryptography.ProtectedData.Unprotect(Byte[] encryptedData, Byte[] optionalEntropy, DataProtectionScope scope) at Microsoft.Practices.EnterpriseLibrary.Security.Cryptography.SymmetricCryptographer.Decrypt(Byte[] encryptedText) at Microsoft.Practices.EnterpriseLibrary.Security.Cryptography.SymmetricAlgorithmProvider.Decrypt(Byte[] ciphertext) at Microsoft.Practices.EnterpriseLibrary.Security.Cryptography.Cryptographer.DecryptSymmetric(ISymmetricCryptoProvider provider, String ciphertextBase64) at Aseinfo.VH4.WindowsServices.ApplicationJobs.IniciaFlujoEntidadJob.Execute(JobExecutionContext context) in c:BuildAgentwork89066541112bb801VH4WindowsServicesApplicationJobsWindowsServiceApplicationJobsIniciaFlujoEntidadJob.cs:line 39 Y revisando en el GenPla, muestra el siguiente mensaje: 2016-10-05 10:50:21,416 [ThreadGestorCola] INFO Aseinfo.VH4.WindowsServices.Salarios.GenPlaHostWcf - Iniciando periodo a generar: ID de Sesión = ab50f319-711b-498f-b26b-69324d2bf716 - Fecha = 05/10/2016 10:50:21 a.m. 2016-10-05 10:50:21,419 [ThreadGestorCola] ERROR Aseinfo.VH4.WindowsServices.Salarios.GenPlaHostWcf - Al enviar la orden de inicio al WCF de calculo de planilla System.Security.Cryptography.CryptographicException: Key not valid for use in specified state. at System.Security.Cryptography.ProtectedData.Unprotect(Byte[] encryptedData, Byte[] optionalEntropy, DataProtectionScope scope) at Microsoft.Practices.EnterpriseLibrary.Security.Cryptography.ProtectedKey.Unprotect() at Microsoft.Practices.EnterpriseLibrary.Security.Cryptography.SymmetricCryptographer.Decrypt(Byte[] encryptedText) at Microsoft.Practices.EnterpriseLibrary.Security.Cryptography.SymmetricAlgorithmProvider.Decrypt(Byte[] ciphertext) at Microsoft.Practices.EnterpriseLibrary.Security.Cryptography.Cryptographer.DecryptSymmetric(ISymmetricCryptoProvider provider, String ciphertextBase64) at Aseinfo.Infrastructure.Common.Cryptography.CryptographyService.DecryptSymmetric(String cipherTextBase64) in c:BuildAgentwork89066541112bb801InfrastructureCommonCryptographyCryptographyService.cs:line 117 at Aseinfo.VH4.WindowsServices.Salarios.GenPlaHostWcf.Execute() in c:vh4VH4WindowsServicesGeneraPlanillaWindowsServiceSalariosGenPlaHostWCF.cs:line 113 |
Este es el error:
Lo que sucede es que no ha generado el archivo SymmetricKey.key asociado a la llave privada de encriptación utilizada por Evolution. También sucede cuando se copia el folder de otro servidor, ya que el key es válido solo para la computadora donde se genera. Usualmente, el primer ejecutable del Tools que se corre genera ese archivo y los demás solo lo utilizan, lo más frecuente es que el EvoConfig.Exe o alguno de los windows Services (AppJob o GenPla) sean quien los genera la primera vez. La solución al problema es detener los servicios, borrar el archivo del folder de instalación (si existirera) y dejar que alguno de los servicios lo cree. Es importante aclarar que si los servicios son ejecutados por un usuario de dominio que no tiene permisos de administración sobre el servidor, entonces sería más conveniente ejecutar alguna de las herramientas con permisos elevados para que se cree en el folder de instalación. |