Automation Suite
2022.10
バナーの背景画像
Automation Suite インストール ガイド
最終更新日 2024年4月24日

Orchestrator を準備する

Orchestrator をスタンドアロンから Automation Suite に移行するには、スタンドアロンのインストールから設定と各種ファイルを収集し、Automation Suite のインストールに適用する必要があります。

Orchestrator で使用する設定によっては、web.configappSettings、ストレージ、NLog、資格情報ストア、暗号化キー、テナントごとの暗号化キーを準備しなければならない場合があります。

移行の概要

Orchestrator をスタンドアロンから Automation Suite に移行するには、スタンドアロンのインストールから設定と各種ファイルを収集し、Automation Suite のインストールに適用する必要があります。

インストール時には一部の設定しか構成できませんが、インストール後の構成ではすべての設定が利用可能になるはずです。

  • インストール時に設定を構成するには、その設定を cluster_config.json ファイルに追加します。
  • インストール完了後の設定の更新は、設定範囲に加え、ある機能が app-of-apps パラメーターからの構成で利用可能かどうかによって異なります。
Orchestrator ポッド内に必要なカスタム ファイル (アセンブリやその他のストレージ ファイルなど) を組み込みの Ceph オブジェクト ストアに保存できます。ストレージ ファイルは、各テナントのバケットに保存されます。プラグインは、orchestrator/plugins/nlog または orchestrator/plugins/securestore の下にある uipath バケットに保存されます。

以下によって、カスタム構成を追加できます。

  • ArgoCD でアプリケーション パラメーターを編集する (パラメーターの上書き)
  • 名前空間 uipath から Kubernetes ConfigMap orchestrator-customconfig 内のファイルを編集する

Web.config を準備する

ほとんどの web.config の設定には同等の設定がありません。あるいは、他のメカニズムを使用して Automation Suite に実装されます。

以下のオプションを構成する必要があります。

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

後で使用できるよう、この設定の値を書き留めておきます。Automation Suite で構成する必要があるかどうかを判断します。既定値は 300MiB です。

アプリの設定を準備する

場合によっては、UiPath.Orchestrator.dll.config 構成ファイルの appSettings または secureAppSettings セクションで行ったカスタム変更を移行する必要があります。カスタムの appSettingssecureAppSettingsorchestrator-customconfig 構成マップに追加できます。
UiPath.Orchestrator.dll.config 構成ファイルの appSettings セクションで、変更または追加した設定を特定します。これらの設定を .json ファイルに保存し、後の手順で利用できるようにします。

保護されたアプリ構成セクションを Orchestrator CLI の保護された構成オプションで復号できます。必要なのは、変更または追加し、引き続き Automation Suite で関連している設定を使用することだけです。

注: 以下の例に示すように、appSettings.custom.json ファイルを作成できます。
{
  "ExampleSetting.Enabled": true,
  "ExampleSetting.Type": "BasicExample",
  "ExampleSetting.Count": 3
}{
  "ExampleSetting.Enabled": true,
  "ExampleSetting.Type": "BasicExample",
  "ExampleSetting.Count": 3
}

ストレージを準備する

ストレージの移行に何が必要か、および現在のストレージ構成をそのままにするのか、あるいは Automation Suite でストレージを管理するのかを決定します。Automation Suite には、すべての Orchestrator ポッドで利用可能な BLOB を Ceph に保存するオプションがあります。移行の場合は、既存のファイルを現在の BLOB ストレージにコピーする必要があります。

ローカル フォルダーで FileSystem タイプのストレージを使用している場合は、ストレージ フォルダーのデータを Automation Suite のノードにあるフォルダーにコピーします。次に、rclone などのユーティリティを使用して、データを Orchestrator にコピーできます。Ceph を使用する場合は、これが既定のオプションであるため、他の構成は必要ありません。
Windows ネットワーク共有で FileSystem を使用する場合は、ArgoCD Orchestrator アプリでストレージを構成する必要があります。現在の Orchestrator 構成から Windows ネットワーク共有への接続データを Storage.Location キーから取得します。Automation Suite は Linux マシンで実行されるため、ネットワーク共有へのアクセスに統合認証を利用することはできません。したがって、ネットワーク共有にアクセス可能なアカウントの資格情報が必要です。
注: 現在は、SMB プロトコルを使用するネットワーク共有のみがサポートされています。NFS を使用するネットワーク共有はサポートされていません。
Azure、AWS、Minio などのリモート ストレージ オプションを使用する場合は、必ず Storage.Location および Storage.Type の設定を appSettings.custom.json に追加してください。

NLog を準備する

NLog に対して以下のカスタマイズを実行できます。

  • 既存のターゲットの変更
  • 新しいターゲットの追加
  • NLog 拡張機能の追加

構成ファイルの NLog セクションを確認し、NLog のカスタム構成を構築します。Elasticsearch でロボット ログのストレージを有効化するために、Automation Suite のパラメーターとしてユーザー名、パスワード、および URI を指定できます。ターゲットは自動的に構成されます。ロボット ログのカスタム シナリオを有効化するには、ターゲットを手動で構成する必要があります。

NLog 拡張機能が必要な場合は、すべての拡張機能とその依存関係を含むフォルダーを作成します。

注: たとえば、nlogextensions のような名前のフォルダーが考えられます。既定では、以下の拡張機能が Orchestrator によって読み込まれるため、フォルダーまたは NLog の構成にこれらの拡張機能を含める必要はありません。
NLog.Targets.ElasticSearch
UiPath.Orchestrator.Logs.Elasticsearch
Microsoft.ApplicationInsights.NLogTarget
NLog.Extensions.AzureEventHubNLog.Targets.ElasticSearch
UiPath.Orchestrator.Logs.Elasticsearch
Microsoft.ApplicationInsights.NLogTarget
NLog.Extensions.AzureEventHub
拡張機能、ターゲット、ルールといった標準的なセクションを含む nlog.custom.config ファイルを作成します。
拡張機能セクションは、assemblyFile を使用して拡張機能アセンブリを指定する項目の配列と、nlogextensions フォルダーを基準とするこのアセンブリのパスです。
Orchestrator は、一般的なユース ケース用に構成 (または部分的に構成) されている NLog のターゲットとルールを定義します。これらのターゲットにカスタマイズが必要な場合は、変更されたプロパティを NLog 構成に含めるだけです。あらかじめ定義された構成から既存のプロパティを削除することはできません。ただし、変更は可能です。Orchestrator ポッドでは、既定で含まれるターゲットが /opt/app-root/app/nlog.config.json の場所で定義されます。
注: Azure BLOB にログを書き込む nlog.custom.config ファイルの例を以下に示します。
{
  "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
      }
    }
  }
}
注: 拡張機能フォルダー nlogextensions は、既知のプラグインの場所にあるオブジェクト ストアにコピーされます。NLog 構成の更新中でも、Orchestrator 構成ツールによる自動実行が可能です。まだプレフィックスが付いていない場合は、スクリプトによって nlog.custom.config が自動的に変更され、各 assemblyFile に /var/orchestrator/plugins/nlog/ の拡張機能配列からプレフィックスが付けられます。

資格情報ストアを準備する

資格情報ストアのカスタム プラグインを Automation Suite に移行できます。そのためには、構成マップ内の構成を更新し、対応するオブジェクト ストア バケットにプラグイン アセンブリをコピーします。

注:
  • プラグインは Linux で動作する必要があります。
  • プラグインは、/tmp 以外のストレージに書き込むことはできません。

以下の資格情報ストア プラグインが、Automation Suite の Orchestrator に自動的にデプロイされます。

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

注: Automation Suite は CyberArk AIM をサポートしていないため、移行できません。CyberArkCCP 資格情報ストアへの移行をお勧めします。
他の資格情報ストア プラグインを使用する場合は、securestoreplugins などのフォルダーにプラグインをコピーします。
以下のように、appSettings.custom.json ファイルに資格情報ストアの設定を追加します。
  • 既定のプラグインを無効化するため、appSettings.custom.json に構成 Plugins.SecureStores.Default を空の文字列値で追加します。
  • appSettings.custom.json で、すべてのカスタム プラグインを Plugins.SecureStores 設定に追加し、; で区切ります。
  • 次のように、カスタム プラグインの設定を追加します。Plugins.SecureStores.<<FriendlyName>>.<<SettingName>>
注:
securestoreplugins プラグイン フォルダーは、既知のプラグインの場所にあるオブジェクト ストア内にコピーされます。
このフォルダーから、Plugins.SecureStores 内のアセンブリが読み込まれます。
Orchestrator アプリ フォルダーにあるプラグイン フォルダーから、Plugins.SecureStore.Default 内のアセンブリが読み込まれます。

暗号化キーを準備する

既定では、インストール時に、Orchestrator がデータベース内の機密情報に使用される暗号化キーを生成します。新しい Orchestrator デプロイでデータベースを再利用する場合は、この暗号化キーを移行する必要があります。

暗号化キーを取得するには、次の手順に従います。

  1. 必要に応じて、UiPath.Orchestrator.dll.config ファイルの secureAppSettings セクションを復号します。詳細については、「UiPath.Orchestrator.dll.config セクションを暗号化する」をご覧ください。
  2. UiPath.Orchestrator.dll.config から暗号化キーを取得します。詳細については、「暗号化キー」をご覧ください。

テナントごとに暗号化キーを準備する

暗号化キー証明書は、Windows 証明書ストアにインストールされます。証明書は、Orchestrator ポッドで使用できるようにするために、Automation Suite 環境に提供する必要があります。

CertificatesStoreLocationAzure.KeyVault.CertificateThumbprint の設定は Automation Suite ではもう必要ありませんが、必要に応じて CertificatePassword を使用することはできます。

次の手順を実行します。

  1. appSettings を確認し、AzureKeyVault.* の設定を取得します。
  2. 後で使用するために、Azure.KeyVault.VaultAddressAzure.KeyVault.ClientIdAzure.KeyVault.DirectoryId を保存します。
  3. 証明書、および必要に応じて証明書のパスワードを取得します。

Was this page helpful?

サポートを受ける
RPA について学ぶ - オートメーション コース
UiPath コミュニティ フォーラム
UiPath ロゴ (白)
信頼とセキュリティ
© 2005-2024 UiPath. All rights reserved.