通知を受け取る

UiPath 製品のインストールとアップグレード

UiPath 製品のインストールとアップグレード ガイド

⚙ Identity Server の AppSettings.json

appsettings.json ファイル (C:\Program Files (x86)\UiPath\Orchestrator\Identity) には Identity Server の設定が含まれています。そのままの設定で Identity Server を使用できます。同内容のもう 1 つのファイル appsettings.Production.json に、お使いの Identity Server に特有の設定を指定します。

🚧

重要

Identity Server を好みに合わせて設定するには、appsettings.Production.json ファイルを変更します。このファイルによって、各インストール処理の後に appsettings.json 内の既存の設定が上書きされます。

📘

注:

これらのパラメーターの値の変更は管理者のみが行うことが推奨されます。

さらに、どのような状況でも appsettings.Production.json の設定を変更できるように、IIS サーバーを停止することをお勧めします。

このページに記載されていないパラメーターは、変更しないでください。

すべてのパラメーターは、大文字と小文字を区別します

設定の優先度

設定は複数の場所で行えます。設定値を決定する際に Identity Server で使用される優先度を、高 (1) から低 (3) までで次に示します。

  1. appsettings.Production.json ファイル内の値
  2. appsettings.json ファイル内の値
  3. コード内の既定値です。特定の設定が 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>;"
}

暗号化

The EncryptionSettings section is used to store tenant encryption keys. The values are automatically migrated from Orchestrator's UiPath.Orchestrator.dll.config during installation.
この設定の値は appsettings.Production.json および appsettings.json に設定されています。

"EncryptionSettings": {
  "EncryptionKey": "3wkO1hkaXLwR9LZoRZIueIxG3GIEB/YMDZUWhD9AR8g="
}

Identity Server を設定すると、Orchestrator と同様にローカル キー (上記をご覧ください) や Azure Key Vault (下記をご覧ください) を使用できるようになります。

"EncryptionSettings": {
  "MultiTenantEncryptionKeyProvider": "AzureKeyVault",
  "EncryptionKeyPerTenant": true,
  "AzureKeyVaultAddress": "keyVaultAddress",
  "AzureKeyVaultCertificateThumbprint": "keyvaultCertificateThumbprint",
  "AzureKeyVaultClientId" : "azureClientId"
},
  • MultiTenantEncryptionKeyProvider - Orchestrator からテナントごとに生成された暗号化キーを格納するキー管理アプリケーションを指定します。既定では、コード内のこの値は ConfigFileKey に設定されています。指定できる値は AzureKeyVaultConfigFileKey です。この値は、Identity Server のインストール時に UiPath.Orchestrator.dll.config の EncryptionKeyPerTenant.KeyProvider の設定からコピーされます。

次の Identity Server のキーは、UiPath.Orchestrator.dll.configSecureAppSettings セクション内の Orchestrator のキーと一致します。

Identity Server Key

Orchestrator Key

EncryptionKeyPerTenant

EncryptionKeyPerTenant.Enabled

AzureKeyVaultAddress

Azure.KeyVault.VaultAddress

AzureKeyVaultCertificateThumbprint

Azure.KeyVault.CertificateThumbprint

AzureKeyVaultClientId

Azure.KeyVault.ClientId

AzureKeyVaultDirectoryId

Azure.KeyVault.DirectoryId

MultiTenantEncryptionKeyProvider

EncryptionKeyPerTenant.KeyProvider

🚧

重要

UiPath.Orchestrator.dll.configCertificatesStoreLocation パラメーターが LocalMachine に設定されている場合、appsettings.Production.jsonAzureKeyVaultCertificateStoreLocation が同じ値であることを確認してください。

🚧

重要

Orchestrator の UiPath.Orchestrator.dll.config 内の暗号化キーまたは Azure Key Vault の設定を変更する場合は、Identity Server の appsettings.Production.json も同じ値で更新する必要があります。

ログ

The Logging section configures the log level for each component used by Identity Server. This is a generic logging configuration. Find more information here.
このセクションには appsettings.json 内の値が含まれます。

"Logging": {
  "LogLevel": {
    "Default": "Trace",
    "Microsoft": "Warning",
    "Microsoft.Hosting.Lifetime": "Information"
  }
}

Identity Server では、MicrosoftMicrosoft.Hosting.Lifetime などの主要なコンポーネントにいくつかの既定値が提供されます。

NLog

NLog セクションには、Orchestrator と同様に、NLog ターゲット経由で Identity Server にログを記録する方法が定義されます。
このセクションには appsettings.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=&#xD;&#xA;&#x9;}}"
    }
  },
  "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 およびコード内で 60 分に設定されています。
  • OrchestratorUrl - Represents the URL of the Orchestrator. This is where Identity Server redirects you when you click the Orchestrator icon within Identity Management Portal's Hub menu.
    この値はインストール中に appsettings.Production.json に設定されます。

📘

注:

OrchestratorUrl の値は小文字の URL を入力するようにしてください。それ以外の場合にはエラーが発生します。

"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"
}
  • EnabledLanguages - Identity Server で使用可能な言語が表示されます。使用可能な言語の数を制限するために使用します。

ロード バランサー

LoadBalancerSettings セクションには、appsettings.Production.json およびコード内の次の既定値が含まれます。

"LoadBalancerSettings": {
  "RedisConnectionString": "",
  "SlidingExpirationTimeInSeconds":  600
}

マルチノード アップグレードの場合、appsetttings.Production.json 内の値は Orchestrator の UiPath.Orchestrator.dll.config から自動的に移行されます。Redis が Orchestrator 内に設定されていない場合、appsettings.Production.json にはこの設定が含まれます。

  • RedisConnectionString - LoadBalancer.UseRedistrue に設定されている場合にのみ使用できます。Redis サーバーを設定するための接続文字列です。サーバーの URL、パスワード、Redis が使用するポートを含みます。また、Orchestrator ノードと Redis サービスの間で SSL 暗号化接続を有効化することもできます。詳細については、こちらをクリックしてください。例:
    • SSL が有効な場合 - "RedisConnectionString": "DOCWREDIS02:6379,password=12345678,ssl=true"
    • SSL が有効でない場合 - "RedisConnectionString": "DOCWREDIS02:6379,password=12345678"
  • SlidingExpirationTimeInSeconds - キャッシュ内項目のスライド式有効期限を制御します。この有効期限は、Redis キャッシュとメモリ内キャッシュ (Redis が利用できない場合の既定値) の両方に適用されます。

Redis の設定

RedisSettings セクションでは、有効化するキャッシュを制御します。

  • UseRedisStoreCache - OAuth クライアント データの Redis キャッシュを有効化するには、値を true に設定します。これは、対話型サインインを使用して短時間に大量のロボットを接続する際のパフォーマンスの問題を回避するのに役立ちます。このキャッシュは、LoadBalancerSettings で指定されたものと同じ Redis 接続文字列を使用します。既定では、UseRedisStoreCache 設定は表示されません。
    : 外部アプリケーション機能を使用している場合、これは推奨されません。この設定ではクライアントをキャッシュし、外部アプリケーションへの更新は反映されないためです。
  • UseRedisStoreClientCache - Set its value to true to enable Redis caching for first-party clients (UiPath applications) or third-party clients (external applications). If you have a large-scale deployment, it is recommended to enable this flag.

署名資格情報

SigningCredentialSettings セクションには、Identity Server によって生成されたトークンの署名に使用される証明書の場所を記述します。このセクションの設定値は、ユーザーの入力に基づいてインストーラーによって設定されます。証明書ストアまたは Azure Key Vault からの証明書の読み取りを許可するように設定できます。

証明書のローテーションの設定

  • ValidationKeys - 2 番目の証明書の NameLocation、および NameType を指定するために使用します。これは、証明書のローテーションに必要です。

📘

注:

セキュリティ上の理由から、署名証明書には 2048 ビットの公開キーが必要です。証明書が有効かつ期限が切れておらず、Identity Server が秘密キーにアクセスできることを確認してください。
常に有効期間内の証明書を使用するために、SigningCredentialSettings セクションに加える必要のある調整については、「証明書のローテーション」をご覧ください。

資格情報ストアの場所の設定例

以下が、資格情報ストア内で資格情報を検索するためのクラシックな設定です。

"SigningCredentialSettings": {
  "StoreLocation": {
    "Name": "30f3c11e676fc8eb1f9dd4e330f3ce668d796796",
    "Location": "LocalMachine",
    "NameType": "Thumbprint"
  }

この例では、Name は拇印の値を表します。
LocationNameType に他の値を使用することはお勧めしません。

Azure Key Vault の場所の設定例

"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 パラメーターをバイパスします。つまり、EnableBasicAuthenticationForHostTenanttrue に設定され、RestrictBasicAuthenticationtrue に設定されている場合は、ホスト レベルでの基本認証の資格情報を使用してログインできることになります。

約 1 か月前に更新


⚙ Identity Server の AppSettings.json


改善の提案は、API リファレンスのページでは制限されています

改善を提案できるのは Markdown の本文コンテンツのみであり、API 仕様に行うことはできません。