- 基本情報
- 要件
- ベスト プラクティス
- インストール
- 更新
- Identity Server
- 起動エラーのトラブルシューティング

Orchestrator インストール ガイド
appsettings.json ファイル (C:\Program Files (x86)\UiPath\Orchestrator\Identity) には Identity Server の設定が含まれています。そのままの設定で Identity Server を使用できます。同内容のもう 1 つのファイル appsettings.Production.json に、お使いの Identity Server に特有の設定を指定します。
appsettings.Production.json ファイルを変更します。このファイルによって、各インストール処理の後に appsettings.json 内の既存の設定が上書きされます。
これらのパラメーターの値の変更は管理者のみが行うことが推奨されます。
appsettings.Production.json の設定を変更できるように、IIS サーバーを停止することをお勧めします。
このページに記載されていないパラメーターは、変更しないでください。
すべてのパラメーターは、大文字と小文字を区別します。
設定は複数の場所で行えます。設定値を決定する際に Identity Server で使用される優先度を、高 (1) から低 (3) までで次に示します。
appsettings.Production.jsonファイル内の値appsettings.jsonファイル内の値- コード内の既定値です。特定の設定が
appsettings.Production.jsonまたはappsettings.jsonに見つからない場合にのみ使用されます。
appsettings.json ファイルはコンマで区切られた複数の json セクションで構成される内部構造を持っています。
接続文字列
ConnectionStrings セクションには、Identity Server データベースの接続文字列が格納されます。この値はインストーラーによって設定されます。
appsettings.Production.json および appsettings.json に設定されています。
"ConnectionStrings": { "DefaultConnection": "Server=.\\sqlexpress;Database=IdentityServer;User ID=<username>;Password=<password>;" }"ConnectionStrings": { "DefaultConnection": "Server=.\\sqlexpress;Database=IdentityServer;User ID=<username>;Password=<password>;" }暗号化
EncryptionSettings セクションには、テナントの暗号化キーが格納されます。値は、インストール時に Orchestrator の UiPath.Orchestrator.dll.config から自動的に移行されます。
appsettings.Production.json および appsettings.json に設定されています。
"EncryptionSettings": {
"EncryptionKey": "3wkO1hkaXLwR9LZoRZIueIxG3GIEB/YMDZUWhD9AR8g="
}"EncryptionSettings": {
"EncryptionKey": "3wkO1hkaXLwR9LZoRZIueIxG3GIEB/YMDZUWhD9AR8g="
}Identity Server を設定すると、Orchestrator と同様にローカル キー (上記をご覧ください) や Azure Key Vault (下記をご覧ください) を使用できるようになります。
"EncryptionSettings": {
"MultiTenantEncryptionKeyProvider": "AzureKeyVault",
"EncryptionKeyPerTenant": true,
"AzureKeyVaultAddress": "keyVaultAddress",
"AzureKeyVaultCertificateThumbprint": "keyvaultCertificateThumbprint",
"AzureKeyVaultClientId" : "azureClientId"
},"EncryptionSettings": {
"MultiTenantEncryptionKeyProvider": "AzureKeyVault",
"EncryptionKeyPerTenant": true,
"AzureKeyVaultAddress": "keyVaultAddress",
"AzureKeyVaultCertificateThumbprint": "keyvaultCertificateThumbprint",
"AzureKeyVaultClientId" : "azureClientId"
},MultiTenantEncryptionKeyProvider- Orchestrator からテナントごとに生成された暗号化キーを格納するキー管理アプリケーションを指定します。既定では、コード内のこの値はConfigFileKeyに設定されています。指定できる値はAzureKeyVaultとConfigFileKeyです。この値は、Identity Server のインストール時に UiPath.Orchestrator.dll.config のEncryptionKeyPerTenant.KeyProviderの設定からコピーされます。
UiPath.Orchestrator.dll.config の SecureAppSettings セクション内の Orchestrator のキーと一致します。
|
Identity Server のキー |
Orchestrator のキー |
|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
UiPath.Orchestrator.dll.config の CertificatesStoreLocation パラメーターが LocalMachine に設定されている場合、appsettings.Production.json の AzureKeyVaultCertificateStoreLocation に同じ値が設定されていることを確認してください。
UiPath.Orchestrator.dll.config 内の暗号化キーまたは Azure Key Vault の設定を変更する場合は、Identity Server の appsettings.Production.json も同じ値で更新する必要があります。
ログ
Logging セクションでは、Identity Server で使用される各コンポーネントのログ レベルを設定します。これは全般的なログ設定です。詳しくはこちらをご覧ください。
appsettings.json 内の値が含まれます。
"Logging": {
"LogLevel": {
"Default": "Trace",
"Microsoft": "Warning",
"Microsoft.Hosting.Lifetime": "Information"
}
}"Logging": {
"LogLevel": {
"Default": "Trace",
"Microsoft": "Warning",
"Microsoft.Hosting.Lifetime": "Information"
}
}Microsoft や Microsoft.Hosting.Lifetime などの主要なコンポーネントにいくつかの既定値が提供されます。
NLog
NLog セクションには、Orchestrator と同様に、NLog ターゲット経由で Identity Server にログを記録する方法が定義されます。
appsettings.json 内の値が含まれます。
json
"NLog": {
"IncludeScopes": true,
"throwConfigExceptions": false,
"targets": {
"EventLog": {
"type": "EventLog",
"source": "IdentityService",
"layout": "${longdate} ${logger} ${message}${onexception:${newline}${exception:maxInnerExceptionLevel=10:format=shortType,message,stacktrace:separator=*:innerExceptionSeparator=
	}}"
}
},
"rules": [
{
"logger": "*",
"minLevel": "Info",
"writeTo": "EventLog"
}
]
},json
"NLog": {
"IncludeScopes": true,
"throwConfigExceptions": false,
"targets": {
"EventLog": {
"type": "EventLog",
"source": "IdentityService",
"layout": "${longdate} ${logger} ${message}${onexception:${newline}${exception:maxInnerExceptionLevel=10:format=shortType,message,stacktrace:separator=*:innerExceptionSeparator=
	}}"
}
},
"rules": [
{
"logger": "*",
"minLevel": "Info",
"writeTo": "EventLog"
}
]
},
既定では、NLog は ApplicationEvents にログを書き込むように構成されています。json のセクションを使用して NLog を設定する方法の詳細については、こちらをご覧ください。
アプリの設定
AppSettings セクションは、Identity Server の主要な設定セクションです。このセクションには appsettings.Production.json および appsettings.json 内の値が含まれます。
-
IdentityServerAddress- Identity Server API の呼び出しに使用されるトークンを検証するときに、Identity Server で確認されるオーディエンスを表します。インストール中、appsettings.Production.jsonの内のこのフィールドに Identity Server のアドレスが自動的に設定されます。Orchestrator のデータ伝達が遮断されるため、この値は変更しないでください。この設定の値はappsettings.Production.jsonおよびappsettings.jsonに設定されています。注:IdentityServerAddressの値は小文字の URL を入力するようにしてください。それ以外の場合にはエラーが発生します。 -
Saml2ValidCertificateOnly-trueに設定すると、SAML2 の設定時に無効な証明書を使用できなくなります。既定では、設定の値はコード内でtrueに設定されています。 -
EnablePII-trueに設定すると、例外に機密情報が含まれるようになります。たとえば、外部 ID プロバイダーの URL アドレスや Identity Server のアドレスなどです。既定では、設定の値はappsettings.jsonおよびコード内でfalseに設定されています。 HideErrorCodesInUi- ログインのエラー コードを UI に表示するかどうかを制御します。既定では、このパラメーターは表示されません。既定値はfalseです。UI でログインのエラー コードを非表示にするには、trueに設定します (例:"HideErrorCodesInUi": true)。-
CookieValidationInterval- ユーザーとテナントがまだアクティブかどうかや、ユーザーが別のブラウザーにログインしていないかどうかを判断するために、Cookie が確認されるまでの間隔 (秒単位) を表します。appsetttings.Production.json内の値は、同じ設定を持つ Orchestrator から自動的に移行されます。既定では、値はappsettings.Production.jsonおよびコード内で60秒に設定されています。 -
CookieExpireMinutes- Identity Server の Cookie の有効期限が切れるまでの時間 (分単位) を表します。appsetttings.Production.json内の値は、同じ設定を持つ Orchestrator から自動的に移行されます。既定では、値はappsettings.Production.jsonおよびコード内で30分に設定されています。 -
OrchestratorUrl- Orchestrator の URL を表します。ID 管理ポータルの [ハブ] メニュー内の Orchestrator アイコンをクリックするとリダイレクトされる URL です。この値はインストール中にappsettings.Production.jsonに設定されます。注:OrchestratorUrlの値は小文字の URL を入力するようにしてください。それ以外の場合にはエラーが発生します。"AppSettings": { "IdentityServerAddress": "https://myIdentity.domain.local/identity", "EnablePII": false, "HideErrorCodesInUi": true, "CookieExpireMinutes": 30, "OrchestratorUrl": "https://myOrchestratorURL.domain.local" } }"AppSettings": { "IdentityServerAddress": "https://myIdentity.domain.local/identity", "EnablePII": false, "HideErrorCodesInUi": true, "CookieExpireMinutes": 30, "OrchestratorUrl": "https://myOrchestratorURL.domain.local" } }
ローカライズ
LocalizationSettings セクションには、コード内の次の既定値が含まれます。
"LocalizationSettings": {
"EnabledLanguages": "en,ja,de,es,es-MX,fr,ko,pt,pt-BR,ru,tr,zh-CN"
}"LocalizationSettings": {
"EnabledLanguages": "en,ja,de,es,es-MX,fr,ko,pt,pt-BR,ru,tr,zh-CN"
}EnabledLanguages- Identity Server で使用可能な言語が表示されます。使用可能な言語の数を制限するために使用します。
ロード バランサー
LoadBalancerSettings セクションには、appsettings.Production.json およびコード内の次の既定値が含まれます。
"LoadBalancerSettings": {
"RedisConnectionString": "",
"SlidingExpirationTimeInSeconds": 600
}"LoadBalancerSettings": {
"RedisConnectionString": "",
"SlidingExpirationTimeInSeconds": 600
}appsetttings.Production.json 内の値は Orchestrator の UiPath.Orchestrator.dll.config から自動的に移行されます。Redis が Orchestrator 内に設定されていない場合、appsettings.Production.json にはこの設定が含まれます。
-
RedisConnectionString-LoadBalancer.UseRedisがtrueに設定されている場合にのみ使用できます。Redis サーバーを設定するための接続文字列です。サーバーの URL、パスワード、Redis が使用するポートを含みます。また、Orchestrator ノードと Redis サービスの間で SSL 暗号化接続を有効化することもできます。詳しくは、こちらをクリックしてください。例:- SSL が有効な場合 -
"RedisConnectionString": A"DOCWREDIS02:6379,password=12345678,ssl=true" - SSL が有効でない場合 -
"RedisConnectionString": "DOCWREDIS02:6379,password=12345678"
- SSL が有効な場合 -
SlidingExpirationTimeInSeconds- キャッシュ内項目のスライド式有効期限を制御します。この有効期限は、Redis キャッシュとメモリ内キャッシュ (Redis が利用できない場合の既定値) の両方に適用されます。
Redis の設定
RedisSettings セクションでは、有効化するキャッシュを制御します。
UseRedisStoreCache- OAuth クライアント データの Redis キャッシュを有効化するには、値をtrueに設定します。これは、対話型サインインを使用して短時間に大量のロボットを接続する際のパフォーマンスの問題を回避するのに役立ちます。このキャッシュは、LoadBalancerSettingsで指定されたものと同じ Redis 接続文字列を使用します。既定では、UseRedisStoreCache設定は表示されません。
UseRedisStoreClientCache- ファーストパーティ クライアント (UiPath アプリケーション) またはサードパーティ クライアント (外部アプリケーション) の Redis キャッシュを有効化するには、値をtrueに設定します。大規模なデプロイの場合は、このフラグを有効化することをお勧めします。
署名資格情報
SigningCredentialSettings セクションには、Identity Server によって生成されたトークンの署名に使用される証明書の場所を記述します。このセクションの設定値は、ユーザーの入力に基づいてインストーラーによって設定されます。証明書ストアまたは Azure Key Vault からの証明書の読み取りを許可するように設定できます。
証明書のローテーションの設定
ValidationKeys - 2 番目の証明書の Name、Location、および NameType を指定するために使用します。これは、証明書のローテーションに必要です。
セキュリティ上の理由から、署名証明書には 2048 ビットの公開キーが必要です。証明書が有効かつ期限が切れておらず、Identity Server が秘密キーにアクセスできることを確認してください。
SigningCredentialSettings セクションに加える必要のある調整については、「証明書のローテーション」をご覧ください。
資格情報ストアの場所の設定例
以下が、資格情報ストア内で資格情報を検索するためのクラシックな設定です。
"SigningCredentialSettings": {
"StoreLocation": {
"Name": "30f3c11e676fc8eb1f9dd4e330f3ce668d796796",
"Location": "LocalMachine",
"NameType": "Thumbprint"
}"SigningCredentialSettings": {
"StoreLocation": {
"Name": "30f3c11e676fc8eb1f9dd4e330f3ce668d796796",
"Location": "LocalMachine",
"NameType": "Thumbprint"
}Name は拇印の値を表します。
Location と NameType に他の値を使用することはお勧めしません。
Azure Key Vault の場所の設定例
"SigningCredentialSettings": {
"AzureKeyVaultLocation": {
"KeyName": "key_name_534553553"
}"SigningCredentialSettings": {
"AzureKeyVaultLocation": {
"KeyName": "key_name_534553553"
}KeyName は Azure Key Vault 内で検索するキーを表します。
認可
-
RestrictBasicAuthentication- ユーザーによる Orchestrator インスタンスへの基本認証資格情報を使用したログインを可能にするかどうかを制御できます。既定では、この設定はappsettings.Production.jsonファイルに表示されません。次の値を使用できます。true- ユーザーは基本認証資格情報を使用してログインできません。false- ユーザーは基本認証資格情報を使用してログインできます。これは既定値です。
-
EnableBasicAuthenticationForHostTenant- ホスト管理者による Orchestrator インスタンスのホスト テナントへの基本認証資格情報を使用したログインを可能にするかどうかを制御できます。既定では、この設定はappsettings.Production.jsonファイルに表示されません。次の値を使用できます。true- ホスト管理者は基本認証資格情報を使用してログインできます。これは既定値です。false- ホスト管理者は基本認証資格情報を使用してログインできません。
RestrictBasicAuthentication パラメーターをバイパスします。つまり、EnableBasicAuthenticationForHostTenant が true に設定され、RestrictBasicAuthentication が true に設定されている場合は、ホスト レベルでの基本認証の資格情報を使用してログインできることになります。