2023.4
Fecha de lanzamiento: 26 de abril de 2023
Ahora ofrecemos una ubicación central para gestionar las etiquetas que utilizas en todos nuestros servicios. La página Etiquetas está disponible en la sección de administración de tu organización, en el nivel de tenant. Te permite añadir, editar y eliminar etiquetas desde un único lugar, eliminando la necesidad de acceder varias veces a objetos individuales para etiquetarlos.
Ahora puede beneficiarse de una mayor eficacia a la hora de solucionar problemas en los trabajos. Esto se debe a nuestra nueva característica de grabación de vídeo, que está disponible en el ámbito del proceso para todas las ejecuciones desatendidas (actualmente solo disponible como vista previa).
You can choose to either record all jobs or only those that are failed, and you have access to these recordings for up to 7 days.
El lanzamiento de esta función supone un cambio en la opción de captura de pantalla existente: ahora está disponible para todos los usuarios, no solo para los que tengan el plan empresarial .
La depuración remota de las ejecuciones de trabajos es ahora un proceso más sencillo con la ayuda de nuestra nueva solución integral: transmisión en directo y control remoto. Esto le permite ver una ejecución desatendida mientras está ocurriendo y, si surgen problemas y es necesaria la depuración, tomar el control remoto de la ejecución e intentar solucionarlo.
Esta nueva característica ayuda a ahorrar tiempo al identificar y resolver problemas, y reduce el número de intervenciones manuales necesarias para depurar y desbloquear procesos de automatización desatendidos.
En octubre de 2021, anunciamos la obsolescencia de las carpetas clásicas.
En abril de 2022 anunciamos su eliminación.
En octubre de 2022, lanzamos un asistente que ayuda en la migración de objetos de carpetas clásicas a carpetas modernas, manteniendo las estructuras y jerarquías existentes.
Seguimos en esta línea deshabilitando las ejecuciones en carpetas clásicas, junto con algunos otros cambios. Por lo tanto, es más importante que nunca migrar tus carpetas clásicas a carpetas modernas, para garantizar un servicio ininterrumpido.
-orchestratorUrl
obligatorio al script MigrateTo-ResourceCatalog.ps1
.
MigrateTo-ResourceCatalog.ps1
debe ejecutarse al actualizar Orchestrator y el servicio de catálogo de recursos.
Actualmente, los administradores pueden configurar permisos detallados de tenant o carpeta para aplicaciones externas asignándolas a carpetas o tenants en Orchestrator. Una app externa obtiene los permisos requeridos para realizar operaciones particulares en una carpeta o tenant mediante uno o más roles.
La aplicación obtiene la unión de todos los ámbitos definidos para ella la organización y en Orchestrator. La eliminación de cualquiera de estos ámbitos deja a la aplicación con niveles de acceso de acuerdo con el ámbito restante.
También puedes usar grupos para simplificar la gestión de aplicaciones externas, ya que los grupos te permiten gestionar juntos objetos con necesidades similares.
Se han introducido dos nuevas opciones que permiten a los administradores de Orchestrator controlar la detención de la exploración de los espacios de trabajo personales:
-
Detener automáticamente la exploración de espacios de trabajo personales después de: el proceso de exploración de los espacios de trabajo personales ahora se puede detener automáticamente después de un período de tiempo configurable.
-
Detener todas las sesiones activas para explorar Espacios de trabajo personales : se pueden detener todas las sesiones de exploración activas actualmente.
Ambas opciones están disponibles en la configuración del tenant (pestañaGeneral > sección Espacios de trabajo personales ).
Ahora puedes almacenar tus credenciales de Orchestrator en AWS Secrets Manager. Para más información sobre el almacén de credenciales recién añadido, consulta Integración de AWS Secrets Manager.
Actualmente, puedes añadir una capa adicional de seguridad a tus almacenes de credenciales, ya de por sí seguros. Para ello, hemos creado Orchestrator Credentials Proxy, que te permite evitar la creación de una conexión directa entre Orchestrator y el almacén de credenciales deseado, y en su lugar conectarlos a través de un proxy.
Features.CredentialStoreHost.Enabled
en el archivo UiPath.Orchestrator.dll.config
, que de forma predeterminada es false
.
Plugins.SecureStores.CyberArkCCP.KeyStorageFlags
al archivo de configuración de Orchestrator, que permite elegir dónde almacenar y cómo importar la clave privada del certificado de cliente configurado para un almacén de credenciales CyberArk CCP. Esto contribuye a evitar cualquier restricción de lectura/escritura o problemas relacionados con los derechos de acceso.
Orchestrator recupera las aplicaciones utilizadas por los paquetes de Studio. Por lo tanto, puede verlos enumerados en los siguientes lugares:
-
En la sección Aplicaciones de la ventana del proceso del paquete subyacente.
-
En la ventana Mostrar notas de la versión para cada versión del paquete.
We have switched to a new date and time formatting library, aiming to provide more unity around formats across locales. While this change has no impact on your experience whatsoever, you might notice the following improvements as compared to our previous library:
-
Date and time formats are now consistent across all locales, i.e. the same digit/letter combination is used throughout. For example, the English
2/24/2023, 4:48:25 PM
is displayed as2023/2/24 16:48:25
in Japanese, whereas you would see2022年7月5日 09時20分37秒
before this change. -
The elapsed time in seconds is now displayed as a precise number rather than an estimate, i.e.
10 seconds ago
instead ofa few seconds ago
.
Hemos adaptado a Orchestrator para que identifique las actividades que desencadenan los eventos como requisitos de paquete en el momento de la creación del proceso. Asígnelos a una conexión de Integration Service y realice más configuraciones para cumplir con sus necesidades comerciales, todo por el bien de las automatizaciones desencadenadas.
Ordena tu base de datos de Orchestrator y establece una política de retención que elimine permanentemente los artículos en cola antiguos o los mueva a un almacenamiento designado. Si necesitas más tiempo para decidirte, también existe la opción de mantener los datos de los artículos en cola en la base de datos de manera indefinida, que es la política que se aplica de forma predeterminada. Al hacerlo, liberas la base de datos de forma organizada y Orchestrator tiene mejor rendimiento.
Descubra los consejos y trucos de la política de retención en nuestra página de documentación.
Hemos mejorado la forma de probar los robots de Automation Suite. Hemos introducido la posibilidad de elegir entre tu licencia de Producción (Unattended) y tu licencia de Pruebas para ejecutar trabajos desatendidos. Como antes, puedes seguir utilizando tu licencia de Producción (Unattended) para ejecutar procesos desatendidos en entornos de producción. Lo que ha cambiado es que la licencia de Pruebas ahora te permite ejecutar conjuntos de pruebas y casos de prueba, así como ejecutar procesos desatendidos.
Simplemente, tienes que asignar la licencia deseada a una plantilla de máquina de robot de Automation Suite en Orchestrator. Tan solo recuerda que el número de licencias asignadas dicta el número de trabajos que el servidor back-end puede ejecutar en paralelo.
¿Deseas saber cómo se refleja esto en la interfaz de usuario de Orchestrator? En primer lugar, verás que los detalles del runtime se muestran tanto para producción como para pruebas a la hora de configurar tu máquina. En segundo lugar, al ejecutar automatizaciones, ahora debes especificar si deseas utilizar Producción (Unattended) o Pruebas como licencia del runtime.
Detalles adicionales para los robots de Automation Suite
Los trabajos de robots de Automation Suite y las ejecuciones de casos de prueba ahora proporcionan detalles sobre el tamaño del robot.
Ya nada te impide interactuar con Orchestrator, ¡ni siquiera la exportación de cuadrículas! La exportación de cuadrículas se realiza ahora en segundo plano, por lo que ya no te impide utilizar Orchestrator hasta que finalice la exportación. Se ha optimizado la experiencia, y se informa en tiempo real del resultado satisfactorio de la exportación. Además, puedes encontrar todas tus exportaciones centralizadas en la nueva página Mis informes.
Más información sobre la exportación de cuadrícula en segundo plano.
Nuevas alertas para operaciones de exportación
Las exportaciones importantes conllevan una gran responsabilidad. Por ello, una nueva alerta te informa del resultado de una exportación. Si la exportación que iniciaste fue satisfactoria, la alerta registra la exportación con la gravedad Información, mientras que, para las exportaciones no satisfactorias, la alerta se registra como Error. Si accedes a la fuente de la alerta haciendo clic en el enlace Ver más del correo electrónico de alerta, se te redirigirá a la página Mis informes y se destacará la exportación exacta que ha fallado. De forma predeterminada, recibirás esta nueva alerta en tus correos electrónicos de alerta, aunque podrás darte de baja si lo consideras demasiado correo no deseado.
UiPath.ConfigProtector.exe
ahora se puede utilizar para cifrar y descifrar información confidencial del servicio de catálogo de recursos.
En la sección correspondiente encontrarás instrucciones detalladas.
Esta mejora aporta algunas actualizaciones adicionales:
-
La herramienta
UiPath.ConfigProtector.exe
se ha actualizado a ASP.NET Core 6.0. -
Se han añadido dos nuevos parámetros:
-
--signing-settings
: te permite añadir la sección de configuración de tu elección a los ajustes de la herramienta. -
--keys
/k
: esto te permite cifrar/descifrar claves que no están codificadas.
-
Consulta la tabla de comandos para obtener más información sobre los nuevos parámetros.
-
¡Identifica tus webhooks más rápido! Hemos añadido los campos Nombre (obligatorio) y Descripción (opcional) a los flujos de creación y edición de webhooks en la interfaz de usuario. Los webhooks existentes reciben un nombre en función de su GUID, como
Webhook-c42b72b1-17fb-4643-ab9c-1bd2102f0ff6
.Estos parámetros también están disponibles en la API, más un parámetro clave obligatorio, con las siguientes menciones:
-
El parámetro Nombre será opcional hasta la versión 2023.4 local. Después de la versión 2023.4, se te solicitará que proporciones el nombre para los webhooks creados a través del punto final
odata/Webhooks
POST. -
El parámetro clave obligatorio es un identificador único del webhook en nuestro sistema, por lo que no puede modificarse.
-
Si no proporcionas un nombre para tu webhook utilizando el método POST, se generará automáticamente un nombre para él, añadiendo el valor Clave a
Webhook
.Más información en nuestra documentación.
-
-
Los eventos de webhook para trabajos y elementos en cola ahora incluyen más propiedades:
-
SpecificPriorityValue para eventos de trabajo
-
ProcessExceptionTimestamp y CreatorUserId para eventos de elementos en cola
-
Trabajos
-
La ventana Detalles del trabajo ahora incluye el campo Versión de paquete, que indica qué versión de un paquete se ha usado para ejecutar el trabajo.
-
Se han añadido dos nuevas columnas de tiempo a la cuadrícula Trabajos, que muestran el tiempo relativo o absoluto de creación de un trabajo. Es importante seleccionar estas columnas en el filtro Columnas, ya que no están visibles de forma predeterminada.
-
Ahora es posible iniciar un trabajo en varios pares de cuenta-máquina. Para ello, solo tienes que activar la opción Selecciona una asignación de cuenta-máquina válida en la página Iniciar trabajo y hacer clic en Agregar asignación de cuenta-máquina. Una vez añadidos los pares deseados, se crea un trabajo Pendiente para cada uno de ellos.
Alertas
El acceso a una alerta desde el desplegable de la alerta la marca automáticamente como leída, mientras te redirige al origen de la alerta.
Interfaz de usuario
-
Se ha rediseñado el menú Más acciones de varias páginas de Automatizaciones para agrupar acciones similares. Además, hemos cambiado el nombre de las etiquetas para Ver registros y Ver todos los registros de este proceso a Ver registros de este trabajo y Ver registros de todos los trabajos de este proceso, respectivamente.
-
Se han añadido dos nuevas columnas de tiempo a la cuadrícula Trabajos, que muestran el tiempo relativo o absoluto de creación de un trabajo. Es importante seleccionar estas columnas en el filtro Columnas, ya que no están visibles de forma predeterminada.
-
Los mensajes de error relativos a las verificaciones de políticas de AWS Secrets Manager ahora incluyen más detalles.
Seguridad
Los parámetros que se introducen como parte de las operaciones de Orchestrator ya no se guardan en nuestra base de datos. Esto elimina el riesgo de que se acceda a información sensible a través de una auditoría y, por tanto, mejora la seguridad de tus datos.
Aplicación
-
La versión de Orchestrator ahora está visible al iniciar/reiniciar la aplicación en los registros del Visor de eventos para Orchestrator independiente y en los registros del contenedor Docker para Automation Suite Orchestrator.
Desencadenadores
Hemos eliminado la restricción de crear solo calendarios de días no laborables en desencadenadores de tiempo que tenían la misma zona horaria que el tenant al que pertenecen. A partir de ahora, cualquier calendario que añada a un desencadenador se interpretará como alineado con la zona horaria del desencadenador.
Actualizaciones
-
Los tenants eliminados ahora son ignorados por la operación que actualiza los estados de los elementos en cola. Esto evita escenarios en los que las transiciones de los elementos de la cola podrían bloquearse cuando se detecta un tenant sin una fuente.
-
Cuando no se configura ninguna política de actualización en Orchestrator (es decir, el módulo de actualización está deshabilitado), el servidor ya no solicita que se realice ninguna actualización de Studio o Robot, aunque el módulo esté habilitado en estos servicios.
La opción Crear para el permiso Medios de ejecución ahora está habilitada de forma predeterminada en el rol Automation User en el nivel de tenant.
Registros
Sabemos que los registros son el núcleo de la depuración y la identificación de comportamientos defectuosos. Esta funcionalidad mejorada de Orchestrator te permite acceder a los registros de todas las ejecuciones de trabajos de un proceso concreto. Vea cómo en nuestra documentación.
-
Ahora se genera una respuesta
400 Bad Request
con el código de errorInvalidTimeZoneId = 1614
cuando una planificación de procesos creada a través de la API incluye un ID de zona horaria no válido. -
Ahora puedes cargar un paquete de proceso desde una fuente externa a través del punto final
/odata/Processes/UiPath.Server.Configuration.OData.SetArguments
. Simplemente, asegúrate de que los argumentos mostrados en la página Procesos y los del paquete son los mismos, ya que Orchestrator no realiza ninguna validación en los paquetes procedentes de fuentes externas. -
Ahora es posible asignar ámbitos de licencia a aplicaciones externas. Encontrarás los ámbitos recién agregados en la lista de recursos Acceso a la API de gestión de la plataforma.
-
La URL de Automation Hub se muestra ahora a través de llamadas al punto final
/odata/Processes
.
- Si la integración SAML al nivel de host se configuraba para utilizar una estrategia de asignación de usuarios externos con el nombre de usuario o la clave de proveedor externo, los usuarios que pertenecían a varias organizaciones no podían iniciar sesión.
- La página Configuración de SAML SSO mostraba una URL incorrecta de afirmación del servicio de atención al cliente. Como solución provisional, había que configurar manualmente la URL de afirmación del servicio de atención al cliente en IDP sin el ID de la partición. La URL de Afirmación de servicio de atención al cliente ahora se muestra correctamente y la solución manual ya no es necesaria. Al actualizar a 2023.4+ tendrás que cambiar la URL de afirmación del servicio de atención al cliente para incluir el ID de la partición.
- Al cargar un nuevo logotipo personalizado, la función de vista previa ya no funcionaba. Ahora, puedes obtener una vista previa del nuevo logotipo en el encabezado, igual que antes.
- Hemos corregido un problema que causaba que la contraseña utilizada para conectarse a un proveedor de depósito de almacenamiento se almacenara en la base de datos. Esto sucedía al crear o editar un depósito de almacenamiento. La contraseña podía ser recuperada por un administrador SQL con acceso de lectura a la base de datos, o por cualquiera con permiso Ver en Auditoría mediante la API.
Utiliza este script para limpiar cualquier contraseña mostrada en los registros existentes. El script puede ejecutarse antes de actualizarse a esta versión.
DECLARE @serverVersion INT SET @serverVersion = ISNULL(CAST(COALESCE(SERVERPROPERTY('ProductMajorVersion'),PARSENAME(CAST(SERVERPROPERTY('productversion') AS varchar(20)), 4)) as INT),0) IF NOT EXISTS (SELECT 1 from [dbo].[Settings] WHERE [Name] = 'Migration.AuditCleanup.Buckets' AND [TenantId] IS NULL) BEGIN IF @serverVersion >= 13 -- SQL Server 2016 -- Remove just the password if json functions are supported EXECUTE sp_executesql N' UPDATE [dbo].[AuditLogs] SET [Parameters] = JSON_MODIFY([Parameters], ''$.bucketDto.Password'', NULL) WHERE [TenantId] IN (SELECT DISTINCT TenantId FROM [dbo].[Buckets] WHERE [StorageProvider] IN (''Amazon'',''Azure'',''Minio'',''S3Compatible'')) AND [ServiceName] = ''UiPath.Orchestrator.Web.Api.OData.Controllers.BucketsController'' AND CHARINDEX(''Password'', [Parameters]) > 0 AND NULLIF(JSON_VALUE([Parameters], ''$.bucketDto.Password''), '''') IS NOT NULL' ELSE -- Remove all parameters if json functions are not supported EXECUTE sp_executesql N' UPDATE [dbo].[AuditLogs] SET [Parameters] = '''' WHERE [TenantId] IN (SELECT DISTINCT TenantId FROM [dbo].[Buckets] WHERE [StorageProvider] IN (''Amazon'',''Azure'',''Minio'',''S3Compatible'')) AND [ServiceName] = ''UiPath.Orchestrator.Web.Api.OData.Controllers.BucketsController'' AND CHARINDEX(''Password'', [Parameters]) > 0' INSERT INTO [dbo].[Settings] ([TenantId],[UserId],[Name],[Value],[CreationTime]) VALUES (null,null,'Migration.AuditCleanup.Buckets','true',GETUTCDATE()) END IF NOT EXISTS (SELECT 1 from [dbo].[Settings] WHERE [Name] = 'Migration.AuditCleanup.CredentialStores' AND [TenantId] IS NULL) BEGIN IF @serverVersion >= 13 -- SQL Server 2016 -- Remove just the password if json functions are supported EXECUTE sp_executesql N' UPDATE [dbo].[AuditLogs] SET [Parameters] = JSON_MODIFY([Parameters], ''$.credentialStoreDto.AdditionalConfiguration'', NULL) WHERE [TenantId] IN (SELECT DISTINCT TenantId FROM [dbo].[CredentialStores] WHERE [Type] <> ''Database'') AND [ServiceName] = ''UiPath.Orchestrator.Web.Api.OData.Controllers.CredentialStoresController'' AND CHARINDEX(''AdditionalConfiguration'', [Parameters]) > 0 AND ISJSON([Parameters]) = 1 AND NULLIF(JSON_VALUE([Parameters], ''$.credentialStoreDto.AdditionalConfiguration''), '''') IS NOT NULL -- Some records are truncated, so not valid JSON UPDATE [dbo].[AuditLogs] SET [Parameters] = '''' WHERE [TenantId] IN (SELECT DISTINCT TenantId FROM [dbo].[CredentialStores] WHERE [Type] <> ''Database'') AND [ServiceName] = ''UiPath.Orchestrator.Web.Api.OData.Controllers.CredentialStoresController'' AND CHARINDEX(''AdditionalConfiguration'', [Parameters]) > 0 AND ISJSON([Parameters]) = 0' ELSE -- Remove all parameters if json functions are not supported EXECUTE sp_executesql N' UPDATE [dbo].[AuditLogs] SET [Parameters] = '''' WHERE [TenantId] IN (SELECT DISTINCT TenantId FROM [dbo].[CredentialStores] WHERE [Type] <> ''Database'') AND [ServiceName] = ''UiPath.Orchestrator.Web.Api.OData.Controllers.CredentialStoresController'' AND CHARINDEX(''AdditionalConfiguration'', [Parameters]) > 0' INSERT INTO [dbo].[Settings] ([TenantId],[UserId],[Name],[Value],[CreationTime]) VALUES (null,null,'Migration.AuditCleanup.CredentialStores','true',GETUTCDATE()) END IF NOT EXISTS (SELECT 1 from [dbo].[Settings] WHERE [Name] = 'Migration.AuditCleanup.PackageFeedApiKey' AND [TenantId] IS NULL) BEGIN IF @serverVersion >= 13 -- SQL Server 2016 -- Remove just the password if json functions are supported EXECUTE sp_executesql N' UPDATE [dbo].[AuditLogEntities] SET [CustomData] = JSON_MODIFY([CustomData], ''$.ApiKey'', NULL) WHERE [EntityId] IS NULL AND [EntityName] = ''UiPackageFeed'' AND CHARINDEX(''ApiKey'', [CustomData]) > 0 AND JSON_VALUE([CustomData], ''$.ApiKey'') IS NOT NULL' ELSE -- Remove just the password if json functions are supported EXECUTE sp_executesql N' UPDATE [dbo].[AuditLogEntities] SET [CustomData] = '''' WHERE [EntityId] IS NULL AND [EntityName] = ''UiPackageFeed'' AND CHARINDEX(''ApiKey'', [CustomData]) > 0' INSERT INTO [dbo].[Settings] ([TenantId],[UserId],[Name],[Value],[CreationTime]) VALUES (null,null,'Migration.AuditCleanup.PackageFeedApiKey','true',GETUTCDATE()) END IF NOT EXISTS (SELECT 1 from [dbo].[Settings] WHERE [Name] = 'Migration.AuditCleanup.PackageFeedBasicPassword' AND [TenantId] IS NULL) BEGIN IF @serverVersion >= 13 -- SQL Server 2016 -- Remove just the password if json functions are supported EXECUTE sp_executesql N' UPDATE [dbo].[AuditLogEntities] SET [CustomData] = JSON_MODIFY([CustomData], ''$.BasicPassword'', NULL) WHERE [EntityId] IS NULL AND [EntityName] = ''UiPackageFeed'' AND CHARINDEX(''BasicPassword'', [CustomData]) > 0 AND JSON_VALUE([CustomData], ''$.BasicPassword'') IS NOT NULL' ELSE -- Remove just the password if json functions are supported EXECUTE sp_executesql N' UPDATE [dbo].[AuditLogEntities] SET [CustomData] = '''' WHERE [EntityId] IS NULL AND [EntityName] = ''UiPackageFeed'' AND CHARINDEX(''BasicPassword'', [CustomData]) > 0' INSERT INTO [dbo].[Settings] ([TenantId],[UserId],[Name],[Value],[CreationTime]) VALUES (null,null,'Migration.AuditCleanup.PackageFeedBasicPassword','true',GETUTCDATE()) END IF NOT EXISTS (SELECT 1 from [dbo].[Settings] WHERE [Name] = 'Migration.AuditCleanup.LicenseKey' AND [TenantId] IS NULL) BEGIN IF @serverVersion >= 13 -- SQL Server 2016 EXECUTE sp_executesql N' UPDATE [dbo].[AuditLogs] SET [Parameters] = JSON_MODIFY([Parameters], ''$.licenseKey'', NULL) WHERE [ServiceName] = ''UiPath.Orchestrator.Web.Api.OData.Controllers.SettingsController'' AND CHARINDEX(''licenseKey'', [Parameters]) > 0 AND ISJSON([Parameters]) = 1 AND JSON_VALUE([Parameters], ''$.licenseKey'') IS NOT NULL UPDATE [dbo].[AuditLogs] SET [Parameters] = '''' WHERE [ServiceName] = ''UiPath.Orchestrator.Web.Api.OData.Controllers.SettingsController'' AND CHARINDEX(''licenseKey'', [Parameters]) > 0 AND ISJSON([Parameters]) = 0' ELSE EXECUTE sp_executesql N' UPDATE [dbo].[AuditLogs] SET [Parameters] = '''' WHERE [ServiceName] = ''UiPath.Orchestrator.Web.Api.OData.Controllers.SettingsController'' AND CHARINDEX(''licenseKey'', [Parameters]) > 0' INSERT INTO [dbo].[Settings] ([TenantId],[UserId],[Name],[Value],[CreationTime]) VALUES (null,null,'Migration.AuditCleanup.LicenseKey','true',GETUTCDATE()) END
DECLARE @serverVersion INT SET @serverVersion = ISNULL(CAST(COALESCE(SERVERPROPERTY('ProductMajorVersion'),PARSENAME(CAST(SERVERPROPERTY('productversion') AS varchar(20)), 4)) as INT),0) IF NOT EXISTS (SELECT 1 from [dbo].[Settings] WHERE [Name] = 'Migration.AuditCleanup.Buckets' AND [TenantId] IS NULL) BEGIN IF @serverVersion >= 13 -- SQL Server 2016 -- Remove just the password if json functions are supported EXECUTE sp_executesql N' UPDATE [dbo].[AuditLogs] SET [Parameters] = JSON_MODIFY([Parameters], ''$.bucketDto.Password'', NULL) WHERE [TenantId] IN (SELECT DISTINCT TenantId FROM [dbo].[Buckets] WHERE [StorageProvider] IN (''Amazon'',''Azure'',''Minio'',''S3Compatible'')) AND [ServiceName] = ''UiPath.Orchestrator.Web.Api.OData.Controllers.BucketsController'' AND CHARINDEX(''Password'', [Parameters]) > 0 AND NULLIF(JSON_VALUE([Parameters], ''$.bucketDto.Password''), '''') IS NOT NULL' ELSE -- Remove all parameters if json functions are not supported EXECUTE sp_executesql N' UPDATE [dbo].[AuditLogs] SET [Parameters] = '''' WHERE [TenantId] IN (SELECT DISTINCT TenantId FROM [dbo].[Buckets] WHERE [StorageProvider] IN (''Amazon'',''Azure'',''Minio'',''S3Compatible'')) AND [ServiceName] = ''UiPath.Orchestrator.Web.Api.OData.Controllers.BucketsController'' AND CHARINDEX(''Password'', [Parameters]) > 0' INSERT INTO [dbo].[Settings] ([TenantId],[UserId],[Name],[Value],[CreationTime]) VALUES (null,null,'Migration.AuditCleanup.Buckets','true',GETUTCDATE()) END IF NOT EXISTS (SELECT 1 from [dbo].[Settings] WHERE [Name] = 'Migration.AuditCleanup.CredentialStores' AND [TenantId] IS NULL) BEGIN IF @serverVersion >= 13 -- SQL Server 2016 -- Remove just the password if json functions are supported EXECUTE sp_executesql N' UPDATE [dbo].[AuditLogs] SET [Parameters] = JSON_MODIFY([Parameters], ''$.credentialStoreDto.AdditionalConfiguration'', NULL) WHERE [TenantId] IN (SELECT DISTINCT TenantId FROM [dbo].[CredentialStores] WHERE [Type] <> ''Database'') AND [ServiceName] = ''UiPath.Orchestrator.Web.Api.OData.Controllers.CredentialStoresController'' AND CHARINDEX(''AdditionalConfiguration'', [Parameters]) > 0 AND ISJSON([Parameters]) = 1 AND NULLIF(JSON_VALUE([Parameters], ''$.credentialStoreDto.AdditionalConfiguration''), '''') IS NOT NULL -- Some records are truncated, so not valid JSON UPDATE [dbo].[AuditLogs] SET [Parameters] = '''' WHERE [TenantId] IN (SELECT DISTINCT TenantId FROM [dbo].[CredentialStores] WHERE [Type] <> ''Database'') AND [ServiceName] = ''UiPath.Orchestrator.Web.Api.OData.Controllers.CredentialStoresController'' AND CHARINDEX(''AdditionalConfiguration'', [Parameters]) > 0 AND ISJSON([Parameters]) = 0' ELSE -- Remove all parameters if json functions are not supported EXECUTE sp_executesql N' UPDATE [dbo].[AuditLogs] SET [Parameters] = '''' WHERE [TenantId] IN (SELECT DISTINCT TenantId FROM [dbo].[CredentialStores] WHERE [Type] <> ''Database'') AND [ServiceName] = ''UiPath.Orchestrator.Web.Api.OData.Controllers.CredentialStoresController'' AND CHARINDEX(''AdditionalConfiguration'', [Parameters]) > 0' INSERT INTO [dbo].[Settings] ([TenantId],[UserId],[Name],[Value],[CreationTime]) VALUES (null,null,'Migration.AuditCleanup.CredentialStores','true',GETUTCDATE()) END IF NOT EXISTS (SELECT 1 from [dbo].[Settings] WHERE [Name] = 'Migration.AuditCleanup.PackageFeedApiKey' AND [TenantId] IS NULL) BEGIN IF @serverVersion >= 13 -- SQL Server 2016 -- Remove just the password if json functions are supported EXECUTE sp_executesql N' UPDATE [dbo].[AuditLogEntities] SET [CustomData] = JSON_MODIFY([CustomData], ''$.ApiKey'', NULL) WHERE [EntityId] IS NULL AND [EntityName] = ''UiPackageFeed'' AND CHARINDEX(''ApiKey'', [CustomData]) > 0 AND JSON_VALUE([CustomData], ''$.ApiKey'') IS NOT NULL' ELSE -- Remove just the password if json functions are supported EXECUTE sp_executesql N' UPDATE [dbo].[AuditLogEntities] SET [CustomData] = '''' WHERE [EntityId] IS NULL AND [EntityName] = ''UiPackageFeed'' AND CHARINDEX(''ApiKey'', [CustomData]) > 0' INSERT INTO [dbo].[Settings] ([TenantId],[UserId],[Name],[Value],[CreationTime]) VALUES (null,null,'Migration.AuditCleanup.PackageFeedApiKey','true',GETUTCDATE()) END IF NOT EXISTS (SELECT 1 from [dbo].[Settings] WHERE [Name] = 'Migration.AuditCleanup.PackageFeedBasicPassword' AND [TenantId] IS NULL) BEGIN IF @serverVersion >= 13 -- SQL Server 2016 -- Remove just the password if json functions are supported EXECUTE sp_executesql N' UPDATE [dbo].[AuditLogEntities] SET [CustomData] = JSON_MODIFY([CustomData], ''$.BasicPassword'', NULL) WHERE [EntityId] IS NULL AND [EntityName] = ''UiPackageFeed'' AND CHARINDEX(''BasicPassword'', [CustomData]) > 0 AND JSON_VALUE([CustomData], ''$.BasicPassword'') IS NOT NULL' ELSE -- Remove just the password if json functions are supported EXECUTE sp_executesql N' UPDATE [dbo].[AuditLogEntities] SET [CustomData] = '''' WHERE [EntityId] IS NULL AND [EntityName] = ''UiPackageFeed'' AND CHARINDEX(''BasicPassword'', [CustomData]) > 0' INSERT INTO [dbo].[Settings] ([TenantId],[UserId],[Name],[Value],[CreationTime]) VALUES (null,null,'Migration.AuditCleanup.PackageFeedBasicPassword','true',GETUTCDATE()) END IF NOT EXISTS (SELECT 1 from [dbo].[Settings] WHERE [Name] = 'Migration.AuditCleanup.LicenseKey' AND [TenantId] IS NULL) BEGIN IF @serverVersion >= 13 -- SQL Server 2016 EXECUTE sp_executesql N' UPDATE [dbo].[AuditLogs] SET [Parameters] = JSON_MODIFY([Parameters], ''$.licenseKey'', NULL) WHERE [ServiceName] = ''UiPath.Orchestrator.Web.Api.OData.Controllers.SettingsController'' AND CHARINDEX(''licenseKey'', [Parameters]) > 0 AND ISJSON([Parameters]) = 1 AND JSON_VALUE([Parameters], ''$.licenseKey'') IS NOT NULL UPDATE [dbo].[AuditLogs] SET [Parameters] = '''' WHERE [ServiceName] = ''UiPath.Orchestrator.Web.Api.OData.Controllers.SettingsController'' AND CHARINDEX(''licenseKey'', [Parameters]) > 0 AND ISJSON([Parameters]) = 0' ELSE EXECUTE sp_executesql N' UPDATE [dbo].[AuditLogs] SET [Parameters] = '''' WHERE [ServiceName] = ''UiPath.Orchestrator.Web.Api.OData.Controllers.SettingsController'' AND CHARINDEX(''licenseKey'', [Parameters]) > 0' INSERT INTO [dbo].[Settings] ([TenantId],[UserId],[Name],[Value],[CreationTime]) VALUES (null,null,'Migration.AuditCleanup.LicenseKey','true',GETUTCDATE()) END - El uso de la última versión del servidor BeyondTrust o la actualización a la misma a veces ocasionaba problemas de integración. Ahora, todo funciona según lo previsto.
- El equilibrio de carga y SignalR a veces ocasionaba problemas de rendimiento. Estos problemas se han solucionado.
- Cuando se eliminaba una máquina asignada a una carpeta, se mantenía la asignación y la máquina seguía apareciendo en esa carpeta. Esto ya no ocurre.
- Tras la migración, las asignaciones cuenta-máquina a veces no se generaban, lo que impedía ejecutar trabajos. Este ya no es el caso.
- Se ha solucionado un bloqueo que impedía la creación de nuevos trabajos en carpetas clásicas, mientras se utilizaban robots específicos.
- Hemos mejorado la seguridad de nuestro sistema restringiendo que información interna innecesaria se exponga en determinadas respuestas de error.
- Al cambiar el nombre de un desencadenador, la página Buscar en tenant seguía mostrando su nombre anterior. Ahora, el nombre actualizado del desencadenador aparece en los resultados de la búsqueda.
- Hemos corregido una incidencia que ocasionaba que las contraseñas de almacén de credenciales se almacenaran en la base de datos. Las contraseñas podían ser recuperadas por un administrador SQL con acceso de lectura a la base de datos, o por cualquiera con permiso Ver en Auditoría mediante la API.
- Las marcas de tiempo mostradas para los trabajos en los registros de la base de datos de Orchestrator eran incorrectas.
- Al exportar un rol de carpeta, también se exportaban los permisos de nivel de tenant de ese rol. Este problema está solucionado.
- Al editar una fecha de aplazamiento para un elemento de la cola, se utilizaba el valor UTC en lugar del valor de la zona horaria del tenant.
- Los archivos de depósito de almacenamiento se eliminaban incorrectamente debido a un problema relacionado con la eliminación de carpetas. Concretamente, al desvincular un depósito de almacenamiento de una carpeta y luego eliminar dicha carpeta, los archivos incluidos en el depósito de almacenamiento desvinculado también se eliminaban. Lo mismo sucedía al eliminar la carpeta sin desvincular primero el depósito de almacenamiento. Esto sucedía a pesar de que el deposito de almacenamiento estuviera vinculado a otras carpetas.
- Cuando se habilitaron las asignaciones cuenta-máquina y se inició un trabajo con la opción Asignar dinámicamente establecida en el número de robots disponibles, al menos un trabajo siguió en estado Pendiente. Ahora, todos los trabajos se ejecutan correctamente por todos los robots disponibles para su recuperación.
- Las ejecuciones no se asignaban correctamente a los robots disponibles. Esto ocurría cuando se llamaba a un gran número de robots para la misma plantilla y se les asignaba el mismo trabajo.
- Los dominios de Active Directory ahora se cargan más rápido. Eso se debe al almacenamiento en caché y al valor configurable de caducidad de la caché del método
GetTrustedDomainNames
. - Al editar una fecha de aplazamiento para un artículo en cola se utilizaba el valor UTC en lugar del valor de la zona horaria del tenant.
- Solicitudes para obtener archivos de depósito de almacenamiento que tienen la extensión .svg, .js, .css, .ttf, .woff, .woff2, o .map fallaban si la extensión se encontraba al final de la solicitud.
- Cuando un usuario intentaba acceder a Orchestrator utilizando una URL que recibía de otro usuario, y la URL recibida incluía datos específicos del usuario, se mostraba una página en blanco y el usuario no podía acceder a Orchestrator. Ahora, en estos casos, se redirige a los usuarios a la página de inicio de sesión.
- La versión del proceso incluida en la ventana Detalles del trabajo era incorrecta y mostraba la última versión cargada en Orchestrator. Ahora, el campo Versión de proceso representa correctamente la versión utilizada para ejecutar el trabajo.
- El filtrado por identidad de host en las páginas Trabajos y Registros no funcionaba correctamente para trabajos ejecutados a través de cuentas sin credenciales. Al ejecutar trabajos en equipos Windows, la columna Identidad del host se rellenaba con la identidad real de los robots (domain\username); sin embargo, al filtrar por este valor no se obtenía ningún trabajo. Al ejecutar trabajos en máquinas Linux, los trabajos se ejecutaban bajo Raíz, sin embargo, este valor no estaba disponible para el filtrado.
- Los botones Aceptar y Cancelar de la ventana de aviso de actualización no se mostraban correctamente en la versión japonesa de la aplicación. Ahora están visibles.
/api/UserPartition/users/{partitionGlobalId}
.
Añadido 24 de abril de 2023
Los gráficos Historial de trabajos y Transacciones de la sección Visión general de la página Supervisión a veces no se muestran correctamente cuando se utiliza Mozilla Firefox. Si esto sucede, el problema debería solucionarse actualizando el navegador.
Este problema se solucionará en nuestra próxima actualización acumulativa.
Agregado 28 de abril de 2023
Hay una desconexión entre los permisos de las aplicaciones externas y el Identity Server, lo que le impide añadir aplicaciones externas a un tenant o una carpeta.
identity-service
en ArgoCD:IdentityFeatureFlags__PublicApps__ApplicationDirectoryMembershipEnabled: 'true'
IdentityFeatureFlags__PublicApps__EnableDefaultScope: 'true'
IdentityFeatureFlags__PublicApps__ApplicationDirectoryMembershipEnabled: 'true'
IdentityFeatureFlags__PublicApps__EnableDefaultScope: 'true'
Una vez añadidos, simplemente guarde los cambios.
Este problema se solucionará en nuestra próxima actualización acumulativa.
Añadido el 6 de noviembre de 2023
En las versiones 2023.4.0 a 2023.4.2, si tienes un entorno integrado de Active Directory (AD), verás fallos esporádicos del producto que provocan el reinicio del grupo de aplicaciones IIS. Esta incidencia se ha corregido en la versión 2023.4.3, pero sigue afectando a las versiones anteriormente mencionadas. Por ello, si utilizas AD, te recomendamos encarecidamente que instales o actualices directamente a la versión 2023.4.3. De lo contrario, encontrarás problemas de funcionalidad.
Añadido el 3 de octubre de 2024
UiPath.Orchestrator.Logs.Elasticsearch.dll
no es compatible con la nueva versión de Orchestrator. Para evitar este problema, siempre debes utilizar la última versión del parche.
Te recomendamos comprobar periódicamente la fecha de caducidad para ver las actualizaciones relativas a las características que quedarán obsoletas y serán eliminadas.
- Novedades
- Portal de gestión de etiquetas
- Grabación de trabajos de vídeo
- Transmisión en vivo y control remoto
- Restringir carpetas clásicas
- Cambios en el script del catálogo de recursos
- Permisos detallados para apps externas
- Actualizaciones de exploración del espacio de trabajo personal
- Nuevo almacén de credenciales
- Custom credential hosts and stores
- Nuevo parámetro de configuración
- Ver aplicaciones de paquetes de Studio en Orchestrator
- New date formatting library
- Desencadenadores de eventos como requisitos del paquete
- Políticas de retención para artículos en cola
- Mejoras
- Runtime de pruebas para robots de Automation Suite
- Exportar cuadrícula en segundo plano
- UiPath.ConfigProtector.exe tool and Resource Catalog Service
- Mejoras de Webhooks
- Mejoras en la usabilidad
- Mejoras de características a través de la API
- Corrección de errores
- Cambios de última hora
- Columna de último inicio de sesión
- Problemas conocidos
- Problema de la página de supervisión
- Problema de permisos de aplicaciones externas
- Problema de identidad conocido
- Usar la última versión del parche al actualizar
- Cronología de la obsolescencia