- 基本情報
- 要件
- ベスト プラクティス
- インストール
- 更新
- Identity Server
- 起動エラーのトラブルシューティング
Publish-IdentityServer.ps1 スクリプトを実行して、Identity Server の初期デプロイまたは更新を行います
Identity Server にパブリッシュする
次の表で、Publish-IdentityServer.ps1 スクリプトで使用できるすべてのパラメーターについて説明します。
| パラメーター | 説明 |
|---|---|
|
| Mandatory. Indicates the type of scenario you want to start. 次のオプションを使用できます。
|
|
| Mandatory. The Azure service principal ID. Please note that the used service principal needs to be assigned the Contributor role to the app service at the subscription scope. |
|
| 必須。サービス プリンシパル ID の Azure トークン パスワード。 |
|
| 必須。Orchestrator をホストする App Service の Azure サブスクリプション ID。 |
|
| 必須。Azure テナント ID。 |
|
| 必須です。Orchestrator インスタンスの URL です。 |
|
| 必須。Identity Server の URL です。 /identity in lowercase.
例: |
|
| 必須。リソースの URL です。 カタログ。 |
|
| このパラメーターは以下の値を含むハッシュ テーブルです。
|
|
| このパラメーターは以下の値を含むハッシュ テーブルです。
|
|
| 必須。UiPath.IdentityServer.Web.zip アーカイブのフル パスまたは相対パスを指定します。 |
|
| 必須。UiPath.IdentityServer.Migrator.Cli.zip アーカイブのフル パスまたは相対パスを指定します。 |
|
| 任意です。Identity Server の App Service のデプロイ スロットが Azure で設定される既定の運用環境 App Service スロットと異なる場合にのみ使用できます。 |
|
| 任意です。存在する場合は、アプリケーションをデプロイ前に停止し、デプロイの完了後に起動します。 |
|
| 任意です。存在する場合は、ユーザーの確認なしにデプロイが続行されます。 |
|
| 任意です。必要なファイルをダウンロードおよび解凍するディレクトリの指定を有効化します。 |
|
| Optional. Allows you to publish to the Azure App Service by relying on your own user identity, without having to create a service principal.
If this parameter is used, the |
Publish-IdentityServer.ps1 スクリプトが初期デプロイまたは Identity Server の更新に使用されます。このスクリプトは、Web アプリで既にデータベースの接続文字列 DefaultConnection を設定済みであることを前提としています。
.\Publish-IdentityServer.ps1 `
-action Deploy `
-orchestratorUrl "<orchestrator_address>" `
-identityServerUrl "https://<identity_server_url>/identity" ` // must be in lowercase
-resourceCatalogUrl "<resource_catalog_address>" `
-orchDetails @{ resourceGroupName = "<resourcegroup_name>"; appServiceName = "<appservice_name>"; targetSlot = "Production" } `
-identityServerDetails @{ resourceGroupName = "<resourcegroup_name>"; appServiceName = "<appservice_name>"; targetSlot = "Production" } `
-azureSubscriptionId "<subscription_id>" `
-azureAccountTenantId "<azure_tenant_id>" `
-azureAccountApplicationId "<azure_application_id>" `
-azureAccountPassword "<azure_account_password>" `
-package "UiPath.IdentityServer.Web.zip" `
-cliPackage "UiPath.IdentityServer.Migrator.Cli.zip" `
-stopApplicationBeforePublish `
-unattended
.\Publish-IdentityServer.ps1 `
-action Deploy `
-orchestratorUrl "<orchestrator_address>" `
-identityServerUrl "https://<identity_server_url>/identity" ` // must be in lowercase
-resourceCatalogUrl "<resource_catalog_address>" `
-orchDetails @{ resourceGroupName = "<resourcegroup_name>"; appServiceName = "<appservice_name>"; targetSlot = "Production" } `
-identityServerDetails @{ resourceGroupName = "<resourcegroup_name>"; appServiceName = "<appservice_name>"; targetSlot = "Production" } `
-azureSubscriptionId "<subscription_id>" `
-azureAccountTenantId "<azure_tenant_id>" `
-azureAccountApplicationId "<azure_application_id>" `
-azureAccountPassword "<azure_account_password>" `
-package "UiPath.IdentityServer.Web.zip" `
-cliPackage "UiPath.IdentityServer.Migrator.Cli.zip" `
-stopApplicationBeforePublish `
-unattended
上記スクリプトの実行後、初期デプロイを成功させるために以下の追加手順を実行する必要があります。
Identity Server のパブリッシュ後に次の手順を実行します。
- Azure Portal に移動します。
- Identity Server の App Service を選択します。
- [証明書] メニューの [独自の証明書を利用する] に移動します。
- 有効なパスワードを持つ秘密キー証明書の
.pfxファイルをアップロードします。
この証明書はアクセス トークンと ID トークンに署名するために使用されます。
-
[構成] メニューで、以下のアプリケーションの設定を [アプリケーションの設定] 列に記載されているとおりに追加します。
6.アプリケーション設定
値 (Value)
説明
AppSettings__IdentityServerAddressAppSettings__IdentityServerAddresshttps://[identity_server]/identity
重要: URL には、Identity Server のアドレス + サフィックスが含まれている必要がありますIdentity Server のパブリック URL。
は小文字です。/identity/identityAppSettings__SigningCredentialSettings__StoreLocation__LocationAppSettings__SigningCredentialSettings__StoreLocation__LocationCurrentUser
これは CurrentUser を指し示す必要があります。
AppSettings__SigningCredentialSettings__StoreLocation__NameAppSettings__SigningCredentialSettings__StoreLocation__NameXXXXXXXXXXXXXXXXXXXXXXXXXXXX
以前にアップロードした証明書の拇印です。
AppSettings__SigningCredentialSettings__StoreLocation__NameTypeAppSettings__SigningCredentialSettings__StoreLocation__NameTypeThumbprintThumbprintEnter を前のフィールドの型として設定します。ThumbprintThumbprintAppSettings__LoadBalancerSettings__RedisConnectionStringAppSettings__LoadBalancerSettings__RedisConnectionStringXXXXXXXXXXXX:XXXX,password=XXXXXXXXXXXXXXXXXX:XXXX,password=XXXXXXThe connection string needed to set up your Redis server, which contains the URL of the server, the password, and the port.
You can also enable SSL encrypted connections between the Orchestrator nodes and the Redis service.
AppSettings__LoadBalancerSettings__SlidingExpirationTimeInSecondsAppSettings__LoadBalancerSettings__SlidingExpirationTimeInSeconds秒数
The sliding expiration time of an item inside the cache.
This expiration time applies to both Redis Cache and InMemory Cache.
AppSettings__RedisSettings__UseRedisStoreCacheAppSettings__RedisSettings__UseRedisStoreCache/truetruefalsefalseこの値を to enable Redis caching of OAuth client data.truetrueThis helps prevent performance issues when using Interactive Sign In to connect a large number of robots in a short amount of time. This cache uses the same Redis connection string specified in the
AppSettings__LoadBalancerSettingsAppSettings__LoadBalancerSettings
注: 外部アプリケーション 機能を使用している場合、この設定はクライアントをキャッシュし、外部アプリケーションへの更新は反映されないため、これは推奨されません。AppSettings__RedisSettings__UseRedisStoreClientCacheAppSettings__RedisSettings__UseRedisStoreClientCache/truetruefalsefalseSet 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.
App__Saml2ValidCertificateOnlyApp__Saml2ValidCertificateOnly/truetruefalsefalseAzure Web アプリ経由で Orchestrator をデプロイする場合、このパラメーターは .falsefalseThis is because SAML2 requires certificates to be added to its trust store, but Azure web apps do not allow this action. Setting the value to
に設定すると、証明書の確認がバイパスされます。falsefalseWEBSITE_LOAD_CERTIFICATESWEBSITE_LOAD_CERTIFICATESXXXXXXXXXXXXXXXXXXXXXXXXXXXX
以前にアップロードした証明書の拇印の値です。
WEBSITE_LOAD_USER_PROFILEWEBSITE_LOAD_USER_PROFILE1
ユーザー プロファイル。 -azureUSGovernmentLogin-azureUSGovernmentLogin任意です。このパラメーターは、米国政府機関のデプロイにのみ使用されます。 変更を保存します。
詳細については、Microsoft Azure ドキュメントをご覧ください。
秘密キーの証明書を置き換える
秘密キーの証明書を新しい証明書に置き換える場合は、必ず次の手順に従ってください。
AppSettings__SigningCredentialSettings__StoreLocation__NameパラメーターとWEBSITE_LOAD_CERTIFICATESパラメーターの値を、新しい証明書の拇印に置き換えます。- Identity アプリ サービスを再起動します。
- Orchestrator アプリ サービスを再起動します。
Identity Server へ移行する
次の表で、
MigrateTo-IdentityServer.ps1で使用できる全パラメーターについて説明します。パラメーター
説明
-cliPackageMandatory . UiPath.IdentityServer.Migrator.Cli.zipアーカイブのフル パスまたは相対パスを指定します。-azureDetailsこのパラメーターは以下の値を含むハッシュ テーブルです。
-
azureAccountApplicationId- Mandatory. The Azure service principal ID.Please note that the used service principal needs to be assigned the Contributor role to the app service at the subscription scope.
-
azureSubscriptionId- 必須です。Orchestrator をホストする App Service の Azure サブスクリプション ID。 -
azureAccountTenantId- 必須です。Azure テナント ID。 -
azureAccountPassword- 必須です。サービス プリンシパル ID の Azure トークン パスワード。
-orchDetailsこのパラメーターは以下の値を含むハッシュ テーブルです。
-
resourceGroupName- 必須です。Orchestrator の App Service を含む Azure リソース グループの名前。 -
appServiceName- 必須です。Orchestrator の Azure App Service の名前。 -
targetSlot- 必須です。Azure によって設定された App Service のターゲット スロット。
-identityServerDetailsこのパラメーターは以下の値を含むハッシュ テーブルです。
-
resourceGroupName- 必須です。Identity Server の App Service を含む Azure リソース グループの名前。 -
appServiceName- 必須です。Identity Server の Azure App Service の名前。 -
targetSlot- 必須です。Azure によって設定された App Service のターゲット スロット。
-identityServerUrlImportant: The URL must contain the address of Identity Server + the suffix必須。Identity Server のパブリック アドレス。
/identityin lowercase.例:
https://[identity_server]/identity-orchestratorUrl必須。Orchestrator のパブリック アドレス。
-tmpDirectory任意です。必要なファイルをダウンロードおよび解凍するディレクトリの指定を有効化します。
-hostAdminPasswordMandatory only for fresh deployments, when -actionis set toDeploy.Specify a custom password for the host administrator. Please note that passwords have to be least 8 characters long, and must have at least one lowercase character and at least one digit.
-isHostPassOneTimeOptional. Enables you to enforce a password reset on the first login for the host administrator.
If this parameter is omitted, the host admin password is not a one-time password.
-defaultTenantAdminPasswordMandatory only for fresh deployments, when -actionis set toDeploy.Specify a custom password for the default tenant administrator. Please note that passwords have to be least 8 characters long, and must have at least one lowercase character and at least one digit.
-isDefaultTenantPassOneTimeOptional. Enables you to enforce a password reset on the first login for the default tenant administrator.
If this parameter is omitted, the tenant admin password is not a one-time password.
-noAzureAuthenticationOptional. Allows you to publish to the Azure App Service by relying on your own user identity, without having to create a service principal. If this parameter is used, the
UseServicePrincipalparameter set (which includes items such as the Azure application ID, password, subscription ID, and tenant ID) are no longer necessary.MigrateTo-IdentityServer.ps1スクリプトは、Orchestrator から Identity Server にユーザー データを移行し、その両方の設定を行うために使用します。このスクリプトは Identity Server に対して Orchestrator の ID 権限を設定し、Identity Server 内で Orchestrator のクライアント構成を作成します。このスクリプトは、Orchestrator と Identity Server が既にパブリッシュ済みであることを前提としています。
.\MigrateTo-IdentityServer.ps1 ` -cliPackage "UiPath.IdentityServer.Migrator.Cli.zip" ` -azureDetails @{azureSubscriptionId = "<subscription_id>"; azureAccountTenantId = "<azure_tenant_id>"; azureAccountApplicationId = "<azure_application_id>"; azureAccountPassword = "<azure_account_password>" } ` -orchDetails @{ resourceGroupName = "<resourcegroup_name>"; appServiceName = "<appservice_name>"; targetSlot = "Production" } ` -identityServerDetails @{ resourceGroupName = "<resourcegroup_name>"; appServiceName = "<appservice_name>"; targetSlot = "Production" } ` -identityServerUrl "https://<identity_server_url>/identity" ` // must be in lowercase -orchestratorUrl "https://<OrchestratorURL>" ` -hostAdminPassword "12345qwert" ` -defaultTenantAdminPassword "12345qwert".\MigrateTo-IdentityServer.ps1 ` -cliPackage "UiPath.IdentityServer.Migrator.Cli.zip" ` -azureDetails @{azureSubscriptionId = "<subscription_id>"; azureAccountTenantId = "<azure_tenant_id>"; azureAccountApplicationId = "<azure_application_id>"; azureAccountPassword = "<azure_account_password>" } ` -orchDetails @{ resourceGroupName = "<resourcegroup_name>"; appServiceName = "<appservice_name>"; targetSlot = "Production" } ` -identityServerDetails @{ resourceGroupName = "<resourcegroup_name>"; appServiceName = "<appservice_name>"; targetSlot = "Production" } ` -identityServerUrl "https://<identity_server_url>/identity" ` // must be in lowercase -orchestratorUrl "https://<OrchestratorURL>" ` -hostAdminPassword "12345qwert" ` -defaultTenantAdminPassword "12345qwert"