UiPath Documentation
automation-suite
2022.10
false
Guía de instalación de Automation Suite
Importante :
Este contenido se ha localizado parcialmente a partir de un sistema de traducción automática. La localización de contenidos recién publicados puede tardar entre una y dos semanas en estar disponible.

Preparando Orchestrator

Para migrar Orchestrator desde una instancia independiente a Automation Suite, debes recopilar los ajustes y varios archivos de la implementación independiente y aplicarlos a la instalación de Automation Suite.

Dependiendo de las configuraciones que uses en Orchestrator, es posible que necesites preparar web.config, appSettings, almacenamiento, NLog, almacenes de credenciales, claves de cifrado y clave de cifrado por tenant.

Información general sobre la migración​

Para migrar Orchestrator desde una instancia independiente a Automation Suite, debes recopilar los ajustes y varios archivos de la implementación independiente y aplicarlos a la instalación de Automation Suite.

Aunque solo parte de los ajustes son configurables en el momento de la instalación, todos deben estar disponibles para la configuración posterior a la instalación.

  • Para configurar los ajustes en el momento de la instalación, añádalos al archivo cluster_config.json.
  • La actualización de los ajustes una vez completada la instalación depende del ámbito de la configuración y de si existe una función para la configuración desde parámetros app-of-apps o no.

You can store custom files that are needed inside the Orchestrator pods, such as assemblies or other storage files, in the built-in Ceph object store. The storage files are stored in a bucket for each tenant. The plugins are stored in the uipath bucket under orchestrator/plugins/nlog or orchestrator/plugins/securestore.

Puede añadir la configuración personalizada de la siguiente manera:

  • editando los parámetros de la aplicación en ArgoCD (anuladores de parámetros);
  • editando los archivos dentro de Kubernetes ConfigMap orchestrator-customconfig desde el espacio de nombres uipath.

Preparando web.config​

La mayoría de los ajustes web.config no tienen un equivalente o se implementan automatización en Automation Suite utilizando otros mecanismos.

Las opciones que deben configurarse son las siguientes:

security.requestFiltering.requestLimits.maxAllowedContentLength
security.requestFiltering.requestLimits.maxAllowedContentLength

Anota el valor de esta configuración para su uso posterior. Decide si necesitas configurarlo en Automation Suite. Su valor predeterminado es 300 MiB.

Preparar AppSettings​

Puede que tenga que migrar cambios personalizados realizados en la sección appSettings o secureAppSettings del archivo de configuración UiPath.Orchestrator.dll.config. Puede añadir appSettings y secureAppSettings personalizado al mapa de configuración de orchestrator-customconfig.

En la sección appSettings del archivo de configuración UiPath.Orchestrator.dll.config, identifique los ajustes modificados o añadidos. Guarde estos ajustes en un archivo .json para que estén disponibles en pasos posteriores.

Puede descifrar cualquier sección de configuración de aplicaciones protegida con la opción de configuración protegida de Orchestrator CLI. Solo tiene que utilizar los ajustes que ha cambiado o añadido y que siguen siendo relevantes en Automation Suite.

Nota:

You can create the appsettings.json file as shown in the following example:

{
  "ExampleSetting.Enabled": true,
  "ExampleSetting.Type": "BasicExample",
  "ExampleSetting.Count": 3
}
{
  "ExampleSetting.Enabled": true,
  "ExampleSetting.Type": "BasicExample",
  "ExampleSetting.Count": 3
}

Preparar almacenamiento​

Decide what you need for the storage migration and if your current storage configuration stays the same or if you would instead let Automation Suite manage the storage for you. Automation Suite offers the option to store the blobs in Ceph, which can be used in all Orchestrator pods. In the case of a migration, you must copy the existing files to the current blob storage.

Si utiliza el almacenamiento tipo FileSystem con una carpeta local, copie los datos de la carpeta de almacenamiento en una carpeta ubicada en un nodo desde Automation Suite. A continuación, utilizando una utilidad como rclone, puede copiar los datos en Orchestrator. Si utiliza Ceph, no se requiere otra configuración, ya que esta es la opción predeterminada.

Si desea utilizar FileSystem con un recurso compartido de red de Windows, debe configurar el almacenamiento en la aplicación ArgoCD Orchestrator. Recupere los datos de conexión al recurso compartido de red de Windows de su configuración Orchestrator actual desde la clave Storage.Location. Puesto que Automation Suite se ejecuta en máquinas Linux, no puede utilizar la autenticación integrada para acceder al recurso compartido de red, por lo que necesita las credenciales de cuenta que pueda acceder a él.

Nota:

En la actualidad solo se admiten los recursos compartidos de red que usan el protocolo SMB. Los recursos compartidos de red que usan NFS no son compatibles.

Si utiliza opciones de almacenamiento remoto, como Azure, AWS, o Minio, asegúrese de añadir los ajustes Storage.Location y Storage.Type al appsettings.json.

Preparar NLog​

Puede realizar las siguientes personalizaciones en NLog:

  • cambiar los objetivos existentes
  • añadir nuevos objetivos
  • añadir extensiones de NLog

Consulte la sección de NLog del archivo de configuración y cree la configuración personalizada de NLog. Para habilitar el almacenamiento de registros de robot en Elasticsearch, puede proporcionar el nombre de usuario, la contraseña y el URI como parámetros de Automation Suite y el objetivo se configura automáticamente. Para habilitar escenarios personalizados para los registros de robot, debe configurar el objetivo manualmente.

Si necesita extensiones de NLog, cree una carpeta que contenga todas las extensiones y sus dependencias.

Nota:

For example, the folder could be named nlogextensions. By default, Orchestrator loads the following extensions, so you do not need to include them in the folder or the NLog configuration:

NLog.Targets.ElasticSearch
UiPath.Orchestrator.Logs.Elasticsearch
Microsoft.ApplicationInsights.NLogTarget
NLog.Extensions.AzureEventHub
NLog.Targets.ElasticSearch
UiPath.Orchestrator.Logs.Elasticsearch
Microsoft.ApplicationInsights.NLogTarget
NLog.Extensions.AzureEventHub

Cree el archivo nlog.custom.config que contiene las secciones las extensiones, los objetivos y las reglas estándar.

La sección de extensiones es una matriz de elementos que especifican los conjuntos de extensiones utilizando assemblyFile, y la ruta del consjunto relativa a la carpeta nlogextensions.

Orchestrator define los objetivos y las reglas de NLog que están configurados total o parcialmente para casos de uso común. Cuando se requiere la personalización de estos objetivos, solo debe incluir las propiedades modificadas en la configuración de NLog. No se pueden eliminar las propiedades existentes de la configuración predefinida, pero sí puede cambiarlas. En el pod de Orchestrator, los objetivos incluidos de manera predeterminada están definidos en la ubicación /opt/app-root/app/nlog.config.json.

Nota:

Example: nlog.custom.config file that writes logs to Azure Blob:

{
  "NLog": {
    "autoReload": false,
    "throwConfigExceptions": false,
    "internalLogLevel": "Warn",
    "internalLogToConsole": true,
    "default-wrapper": {
      "type": "UiPrettyExceptionWrapper"
    },
    "extensions": [
      { "assembly": "UiPath.Orchestrator.Logs.DatabaseBulk.NLogTarget" }
    ],
    "targets": {
      "robotElasticBuffer": {
        "type": "BufferingWrapper",
        "flushTimeout": 5000,
        "target": {
          "type": "ElasticSearch",
          "name": "robotElastic",
          "requireAuth": false,
          "uri": "",
          "username": "",
          "password": "",
          "index": "${event-properties:item=indexName}-${date:format=yyyy.MM}",
          "documentType": "logEvent",
          "includeAllProperties": true,
          "layout": "${message}",
          "excludedProperties": "agentSessionId,tenantId,indexName"
        }
      },
      "serverElasticBuffer": {
        "type": "BufferingWrapper",
        "flushTimeout": 5000,
        "target": {
          "type": "ElasticSearch",
          "name": "serverElastic",
          "requireAuth": false,
          "uri": "",
          "username": "",
          "password": "",
          "index": "serverdiagnostics-${date:format=yyyy.MM}",
          "documentType": "logEvent",
          "includeAllProperties": true,
          "layout": "${machinename} ${message}"
        }
      },
      "database": {
        "type": "AsyncWrapper",
        "overflowAction": "Block",
        "queueLimit": 100,
        "fullBatchSizeWriteLimit": 2,
        "batchSize": 60,
        "timeToSleepBetweenBatches": 1,
        "optimizeBufferReuse": true,
        "target": {
          "type": "DatabaseBulk",
          "connectionString": "${ui-connection-strings:item=Default}",
          "tableName": "[dbo].[Logs]",
          "batchSize": "20",
          "parameters": [
            {
              "dbType": "BigInt",
              "name": "OrganizationUnitId",
              "propertyItem": "organizationUnitId"
            },
            {
              "dbType": "Int",
              "name": "TenantId",
              "propertyItem": "tenantId"
            },
            {
              "dbType": "DateTime",
              "name": "TimeStamp",
              "layout": "${date:format=yyyy-MM-dd HH\\:mm\\:ss.fff}"
            },
            {
              "dbType": "Int",
              "name": "Level",
              "propertyItem": "levelOrdinal"
            },
            {
              "dbType": "NVarChar",
              "name": "WindowsIdentity",
              "propertyItem": "windowsIdentity"
            },
            {
              "dbType": "NVarChar",
              "name": "ProcessName",
              "propertyItem": "processName"
            },
            {
              "dbType": "UniqueIdentifier",
              "name": "JobKey",
              "propertyItem": "jobId"
            },
            {
              "dbType": "NVarChar",
              "name": "Message"
            },
            {
              "dbType": "NVarChar",
              "name": "RawMessage",
              "propertyItem": "rawMessage"
            },
            {
              "dbType": "NVarChar",
              "name": "RobotName",
              "propertyItem": "robotName"
            },
            {
              "dbType": "BigInt",
              "name": "MachineId",
              "propertyItem": "machineId"
            },
            {
              "dbType": "UniqueIdentifier",
              "name": "UserKey",
              "propertyItem": "userKey"
            },
            {
              "dbType": "NVarChar",
              "name": "HostMachineName",
              "propertyItem": "machineName"
            }
          ]
        }
      },
      "monitoring": {
        "type": "AsyncWrapper",
        "overflowAction": "Block",
        "queueLimit": 100,
        "fullBatchSizeWriteLimit": 2,
        "batchSize": 60,
        "optimizeBufferReuse": true,
        "target": {
          "type": "DatabaseBulk",
          "connectionString": "${ui-connection-strings:item=Default}",
          "tableName": "[stats].[ErrorLogs]",
          "batchSize": "20",
          "parameters": [
            {
              "dbType": "BigInt",
              "name": "OrganizationUnitId",
              "propertyItem": "organizationUnitId"
            },
            {
              "dbType": "BigInt",
              "name": "TenantId",
              "propertyItem": "tenantId"
            },
            {
              "dbType": "DateTime",
              "name": "TimeStamp",
              "layout": "${date:format=yyyy-MM-dd HH\\:mm\\:ss.fff}"
            },
            {
              "dbType": "UniqueIdentifier",
              "name": "CorrelationId",
              "propertyItem": "Correlation"
            },
            {
              "dbType": "Int",
              "name": "Source",
              "propertyItem": "logSource"
            },
            {
              "dbType": "Int",
              "name": "Level",
              "propertyItem": "levelOrdinal"
            },
            {
              "dbType": "BigInt",
              "name": "RobotId",
              "propertyItem": "robotId"
            },
            {
              "dbType": "NVarChar",
              "name": "ProcessName",
              "propertyItem": "processName"
            },
            {
              "dbType": "UniqueIdentifier",
              "name": "JobKey",
              "propertyItem": "jobId"
            },
            {
              "dbType": "BigInt",
              "name": "QueueDefinitionId",
              "propertyItem": "queueId"
            },
            {
              "dbType": "NVarChar",
              "name": "Message"
            }
          ]
        }
      },
      "insightsRobotLogs": {
        "type": "AsyncWrapper",
        "overflowAction": "Block",
        "queueLimit": 100,
        "fullBatchSizeWriteLimit": 2,
        "batchSize": 60,
        "optimizeBufferReuse": true,
        "target": {
          "type": "DatabaseBulk",
          "connectionString": "${ui-connection-strings:item=Insights}",
          "tableName": "[dbo].[RobotLogs]",
          "batchSize": "20",
          "parameters": [
            {
              "dbType": "BigInt",
              "name": "OrganizationUnitId",
              "propertyItem": "organizationUnitId"
            },
            {
              "dbType": "Int",
              "name": "TenantId",
              "propertyItem": "tenantId"
            },
            {
              "dbType": "DateTime",
              "name": "TimeStamp",
              "layout": "${date:format=yyyy-MM-dd HH\\:mm\\:ss.fff}"
            },
            {
              "dbType": "NVarChar",
              "name": "WindowsIdentity",
              "propertyItem": "windowsIdentity"
            },
            {
              "dbType": "NVarChar",
              "name": "ProcessName",
              "propertyItem": "processName"
            },
            {
              "dbType": "UniqueIdentifier",
              "name": "JobKey",
              "propertyItem": "jobId"
            },
            {
              "dbType": "NVarChar",
              "name": "RawMessage",
              "propertyItem": "rawMessage"
            },
            {
              "dbType": "NVarChar",
              "name": "RobotName",
              "propertyItem": "robotName"
            },
            {
              "dbType": "BigInt",
              "name": "MachineId",
              "propertyItem": "machineId"
            },
            {
              "dbType": "NVarChar",
              "name": "Message"
            },
            {
              "dbType": "Int",
              "name": "LevelOrdinal",
              "propertyItem": "levelOrdinal"
            },
            {
              "dbType": "Int",
              "name": "NumCustomFields",
              "layout": "${ui-robot-logs-num-custom-fields}"
            }
          ]
        }
      },
      "stdout": {
        "type": "Console",
        "layout": {
          "type": "JsonLayout",
          "includeAllProperties": true,
          "Attributes": [
            {
              "name": "ts",
              "layout": "${longdate}"
            },
            {
              "name": "traceId",
              "layout": "${aspnet-TraceIdentifier}"
            },
            {
              "name": "level",
              "layout": "${level:upperCase=true}"
            },
            {
              "name": "logger",
              "layout": "${logger}"
            },
            {
              "name": "message",
              "layout": "${message}"
            },
            {
              "name": "exception",
              "layout": "${onexception:${ui-pretty-exception}}"
            }
          ]
        }
      }
    },
    "rules": {
      "10_Robot_Insights": {
        "logger": "Robot.*",
        "ruleName": "insightsRobotLogsRule",
        "minLevel": "Info",
        "writeTo": "insightsRobotLogs",
        "enabled": false,
        "final": false,
        "filters": {
          "defaultAction": "Ignore",
          "when": {
            "condition": "level >= LogLevel.Error or ends-with('${message}',' execution ended')",
            "action": "Log"
          }
        }
      },
      "20_Robot_Primary": {
        "logger": "Robot.*",
        "ruleName": "primaryRobotLogsTarget",
        "writeTo": "database",
        "minLevel": "Trace",
        "maxLevel": "Fatal",
        "final": true
      },
      "30_Business_Exceptions": {
        "logger": "BusinessException.*",
        "minLevel": "Info",
        "writeTo": "",
        "enabled": true,
        "final": true
      },
      "40_Monitoring": {
        "logger": "Monitoring.*",
        "minLevel": "Warn",
        "maxLevel": "Fatal",
        "writeTo": "monitoring",
        "final": true
      },
      "70_Final": {
        "logger": "*",
        "minLevel": "Info",
        "maxLevel": "Fatal",
        "writeTo": "stdout",
        "final": false
      }
    }
  }
}
{
  "NLog": {
    "autoReload": false,
    "throwConfigExceptions": false,
    "internalLogLevel": "Warn",
    "internalLogToConsole": true,
    "default-wrapper": {
      "type": "UiPrettyExceptionWrapper"
    },
    "extensions": [
      { "assembly": "UiPath.Orchestrator.Logs.DatabaseBulk.NLogTarget" }
    ],
    "targets": {
      "robotElasticBuffer": {
        "type": "BufferingWrapper",
        "flushTimeout": 5000,
        "target": {
          "type": "ElasticSearch",
          "name": "robotElastic",
          "requireAuth": false,
          "uri": "",
          "username": "",
          "password": "",
          "index": "${event-properties:item=indexName}-${date:format=yyyy.MM}",
          "documentType": "logEvent",
          "includeAllProperties": true,
          "layout": "${message}",
          "excludedProperties": "agentSessionId,tenantId,indexName"
        }
      },
      "serverElasticBuffer": {
        "type": "BufferingWrapper",
        "flushTimeout": 5000,
        "target": {
          "type": "ElasticSearch",
          "name": "serverElastic",
          "requireAuth": false,
          "uri": "",
          "username": "",
          "password": "",
          "index": "serverdiagnostics-${date:format=yyyy.MM}",
          "documentType": "logEvent",
          "includeAllProperties": true,
          "layout": "${machinename} ${message}"
        }
      },
      "database": {
        "type": "AsyncWrapper",
        "overflowAction": "Block",
        "queueLimit": 100,
        "fullBatchSizeWriteLimit": 2,
        "batchSize": 60,
        "timeToSleepBetweenBatches": 1,
        "optimizeBufferReuse": true,
        "target": {
          "type": "DatabaseBulk",
          "connectionString": "${ui-connection-strings:item=Default}",
          "tableName": "[dbo].[Logs]",
          "batchSize": "20",
          "parameters": [
            {
              "dbType": "BigInt",
              "name": "OrganizationUnitId",
              "propertyItem": "organizationUnitId"
            },
            {
              "dbType": "Int",
              "name": "TenantId",
              "propertyItem": "tenantId"
            },
            {
              "dbType": "DateTime",
              "name": "TimeStamp",
              "layout": "${date:format=yyyy-MM-dd HH\\:mm\\:ss.fff}"
            },
            {
              "dbType": "Int",
              "name": "Level",
              "propertyItem": "levelOrdinal"
            },
            {
              "dbType": "NVarChar",
              "name": "WindowsIdentity",
              "propertyItem": "windowsIdentity"
            },
            {
              "dbType": "NVarChar",
              "name": "ProcessName",
              "propertyItem": "processName"
            },
            {
              "dbType": "UniqueIdentifier",
              "name": "JobKey",
              "propertyItem": "jobId"
            },
            {
              "dbType": "NVarChar",
              "name": "Message"
            },
            {
              "dbType": "NVarChar",
              "name": "RawMessage",
              "propertyItem": "rawMessage"
            },
            {
              "dbType": "NVarChar",
              "name": "RobotName",
              "propertyItem": "robotName"
            },
            {
              "dbType": "BigInt",
              "name": "MachineId",
              "propertyItem": "machineId"
            },
            {
              "dbType": "UniqueIdentifier",
              "name": "UserKey",
              "propertyItem": "userKey"
            },
            {
              "dbType": "NVarChar",
              "name": "HostMachineName",
              "propertyItem": "machineName"
            }
          ]
        }
      },
      "monitoring": {
        "type": "AsyncWrapper",
        "overflowAction": "Block",
        "queueLimit": 100,
        "fullBatchSizeWriteLimit": 2,
        "batchSize": 60,
        "optimizeBufferReuse": true,
        "target": {
          "type": "DatabaseBulk",
          "connectionString": "${ui-connection-strings:item=Default}",
          "tableName": "[stats].[ErrorLogs]",
          "batchSize": "20",
          "parameters": [
            {
              "dbType": "BigInt",
              "name": "OrganizationUnitId",
              "propertyItem": "organizationUnitId"
            },
            {
              "dbType": "BigInt",
              "name": "TenantId",
              "propertyItem": "tenantId"
            },
            {
              "dbType": "DateTime",
              "name": "TimeStamp",
              "layout": "${date:format=yyyy-MM-dd HH\\:mm\\:ss.fff}"
            },
            {
              "dbType": "UniqueIdentifier",
              "name": "CorrelationId",
              "propertyItem": "Correlation"
            },
            {
              "dbType": "Int",
              "name": "Source",
              "propertyItem": "logSource"
            },
            {
              "dbType": "Int",
              "name": "Level",
              "propertyItem": "levelOrdinal"
            },
            {
              "dbType": "BigInt",
              "name": "RobotId",
              "propertyItem": "robotId"
            },
            {
              "dbType": "NVarChar",
              "name": "ProcessName",
              "propertyItem": "processName"
            },
            {
              "dbType": "UniqueIdentifier",
              "name": "JobKey",
              "propertyItem": "jobId"
            },
            {
              "dbType": "BigInt",
              "name": "QueueDefinitionId",
              "propertyItem": "queueId"
            },
            {
              "dbType": "NVarChar",
              "name": "Message"
            }
          ]
        }
      },
      "insightsRobotLogs": {
        "type": "AsyncWrapper",
        "overflowAction": "Block",
        "queueLimit": 100,
        "fullBatchSizeWriteLimit": 2,
        "batchSize": 60,
        "optimizeBufferReuse": true,
        "target": {
          "type": "DatabaseBulk",
          "connectionString": "${ui-connection-strings:item=Insights}",
          "tableName": "[dbo].[RobotLogs]",
          "batchSize": "20",
          "parameters": [
            {
              "dbType": "BigInt",
              "name": "OrganizationUnitId",
              "propertyItem": "organizationUnitId"
            },
            {
              "dbType": "Int",
              "name": "TenantId",
              "propertyItem": "tenantId"
            },
            {
              "dbType": "DateTime",
              "name": "TimeStamp",
              "layout": "${date:format=yyyy-MM-dd HH\\:mm\\:ss.fff}"
            },
            {
              "dbType": "NVarChar",
              "name": "WindowsIdentity",
              "propertyItem": "windowsIdentity"
            },
            {
              "dbType": "NVarChar",
              "name": "ProcessName",
              "propertyItem": "processName"
            },
            {
              "dbType": "UniqueIdentifier",
              "name": "JobKey",
              "propertyItem": "jobId"
            },
            {
              "dbType": "NVarChar",
              "name": "RawMessage",
              "propertyItem": "rawMessage"
            },
            {
              "dbType": "NVarChar",
              "name": "RobotName",
              "propertyItem": "robotName"
            },
            {
              "dbType": "BigInt",
              "name": "MachineId",
              "propertyItem": "machineId"
            },
            {
              "dbType": "NVarChar",
              "name": "Message"
            },
            {
              "dbType": "Int",
              "name": "LevelOrdinal",
              "propertyItem": "levelOrdinal"
            },
            {
              "dbType": "Int",
              "name": "NumCustomFields",
              "layout": "${ui-robot-logs-num-custom-fields}"
            }
          ]
        }
      },
      "stdout": {
        "type": "Console",
        "layout": {
          "type": "JsonLayout",
          "includeAllProperties": true,
          "Attributes": [
            {
              "name": "ts",
              "layout": "${longdate}"
            },
            {
              "name": "traceId",
              "layout": "${aspnet-TraceIdentifier}"
            },
            {
              "name": "level",
              "layout": "${level:upperCase=true}"
            },
            {
              "name": "logger",
              "layout": "${logger}"
            },
            {
              "name": "message",
              "layout": "${message}"
            },
            {
              "name": "exception",
              "layout": "${onexception:${ui-pretty-exception}}"
            }
          ]
        }
      }
    },
    "rules": {
      "10_Robot_Insights": {
        "logger": "Robot.*",
        "ruleName": "insightsRobotLogsRule",
        "minLevel": "Info",
        "writeTo": "insightsRobotLogs",
        "enabled": false,
        "final": false,
        "filters": {
          "defaultAction": "Ignore",
          "when": {
            "condition": "level >= LogLevel.Error or ends-with('${message}',' execution ended')",
            "action": "Log"
          }
        }
      },
      "20_Robot_Primary": {
        "logger": "Robot.*",
        "ruleName": "primaryRobotLogsTarget",
        "writeTo": "database",
        "minLevel": "Trace",
        "maxLevel": "Fatal",
        "final": true
      },
      "30_Business_Exceptions": {
        "logger": "BusinessException.*",
        "minLevel": "Info",
        "writeTo": "",
        "enabled": true,
        "final": true
      },
      "40_Monitoring": {
        "logger": "Monitoring.*",
        "minLevel": "Warn",
        "maxLevel": "Fatal",
        "writeTo": "monitoring",
        "final": true
      },
      "70_Final": {
        "logger": "*",
        "minLevel": "Info",
        "maxLevel": "Fatal",
        "writeTo": "stdout",
        "final": false
      }
    }
  }
}
Nota:

La carpeta de extensiones nlogextensions se copia en el almacén de objetos en la ubicación de complementos conocida. La herramienta de configuración de Orchestrator puede hacerlo automáticamente a la vez que actualiza la configuración de NLog. El script cambia automáticamente nlog.custom.config para prefijar cada archivo assemblyFile de la matriz de extensiones con /var/orchestrator/plugins/nlog/ si no está prefijado ya.

Preparar almacenes de credenciales​

Puede migrar los complementos personalizados para los almacenes de credenciales a Automation Suite. Para ello, actualice la configuración en el mapa de configuración y copie los conjuntos de complementos en el depósito correspondiente del almacén de objetos.

Nota:
  • Los complementos deben funcionar con Linux.
  • Los complementos no deben copiarse en ningún almacenamiento, aparte de /tmp.

Los siguientes complementos de almacenes de credenciales se implementan automáticamente en Orchestrator en Automation Suite:

  • UiPath.Orchestrator.AzureKeyVault.SecureStore.dll
  • UiPath.Orchestrator.SecureStore.CyberArkCCP.dll
Nota:

Automation Suite no es compatible con CyberArk AIM, por lo que no puede migrarlo. Recomendamos migrar al almacén de credenciales de CyberArkCCP.

Si utiliza otros complementos de almacenes de credenciales, cópielos en una carpeta, como securestoreplugins.

Añada la configuración del almacén de credenciales en el archivo appsettings.json del modo que sigue:

  • para deshabilitar complementos predeterminados, añade la configuración Plugins.SecureStores.Default con un valor de cadena vacío en appsettings.json;
  • añade todos los complementos personalizados a la configuración de Plugins.SecureStores separados por ; en appsettings.json;
  • añade los ajustes de complementos personalizados de la siguiente manera: Plugins.SecureStores.<<FriendlyName>>.<<SettingName>>.
Nota:

La carpeta de complementos securestoreplugins se copia en el almacén de objetos en la ubicación de complementos conocida.

Los conjuntos de Plugins.SecureStores se cargan desde esta carpeta.

Los conjuntos de Plugins.SecureStore.Default se cargan desde la carpeta de complementos de la carpeta de aplicaciones de Orchestrator.

Preparar la clave de cifrado.​

De manera predeterminada, en el momento de la instalación, Orchestrator genera una clave de cifrado que se utilizará para la información confidencial de la base de datos. Debe migrar esta clave si desea reutilizar una base de datos en una nueva implementación de Orchestrator

Para recuperar la clave de cifrado, sigue los siguientes pasos:

  1. Descifra la sección secureAppSettings del archivo UiPath.Orchestrator.dll.config, si fuera necesario. Para obtener más detalles, consulta Cifrar secciones UiPath.Orchestrator.dll.config.
  2. Recupera la clave de cifrado desde UiPath.Orchestrator.dll.config. Para obtener más detalles, consulta Clave de cifrado.

Preparar la clave de cifrado por tenant​

El certificado de clave de cifrado está instalado en el almacén de certificados de Windows. Debe proporcionar el certificado al entorno de Automation Suite para que esté disponible para los pods de Orchestrator.

Los ajustes CertificatesStoreLocation y Azure.KeyVault.CertificateThumbprint ya no son necesarios en Automation Suite, pero puede usar el CertificatePassword si es necesario.

Lleve a cabo los pasos siguientes:

  1. Revise appSettings y obtenga los ajustes AzureKeyVault.*.
  2. Guarde el Azure.KeyVault.VaultAddress, Azure.KeyVault.ClientId y Azure.KeyVault.DirectoryId para su uso posterior.
  3. Recupere el certificado y, si es necesario, la contraseña del certificado.

¿Te ha resultado útil esta página?

Conectar

¿Necesita ayuda? Soporte

¿Quiere aprender? UiPath Academy

¿Tiene alguna pregunta? Foro de UiPath

Manténgase actualizado