- 基本情報
- 要件
- ベスト プラクティス
- インストール
- 更新
- Identity Server
- 起動エラーのトラブルシューティング
Identity Server にパブリッシュする
次の表で、Publish-IdentityServer.ps1 スクリプトで使用できるすべてのパラメーターについて説明します。
| パラメーター | 説明 |
|---|---|
|
|
必須。開始するシナリオの種類を指定します。次のオプションを使用できます。
|
|
|
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. Example: https://[identity_server]/identity
|
|
|
このパラメーターは以下の値を含むハッシュ テーブルです。
|
|
|
このパラメーターは以下の値を含むハッシュ テーブルです。
|
|
|
必須。 |
|
|
必須。 |
|
|
任意です。Identity Server の App Service のデプロイ スロットが Azure で設定される既定の運用環境 App Service スロットと異なる場合にのみ使用できます。 |
|
|
任意です。存在する場合は、アプリケーションをデプロイ前に停止し、デプロイの完了後に起動します。 |
|
|
任意です。存在する場合は、ユーザーの確認なしにデプロイが続行されます。 |
|
|
任意です。必要なファイルをダウンロードおよび解凍するディレクトリの指定を有効化します。 |
|
|
任意です。サービス プリンシパルを作成することなく、ユーザー自身の ID を利用して Azure App Service にパブリッシュを行えます。このパラメーターを使用すると、 |
-azureUSGovernmentLogin | 任意です。このパラメーターは、米国政府機関のデプロイにのみ使用されます。 |
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
-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
-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 トークンに署名するために使用されます。
-
[構成] メニューで、以下のアプリケーションの設定を [アプリケーションの設定] 列に記載されているとおりに追加します。
アプリケーション設定 値 (Value) 説明 AppSettings__IdentityServerAddresshttps://[identity_server]/identity Identity Server のパブリック URL。
The URL must contain the address of Identity Server + the suffix/identityin lowercase.AppSettings__SigningCredentialSettings__StoreLocation__LocationCurrentUser これは CurrentUser を指し示す必要があります。 AppSettings__SigningCredentialSettings__StoreLocation__NameXXXXXXXXXXXXXXXXXXXXXXXXXXXX 以前にアップロードした証明書の拇印です。 AppSettings__SigningCredentialSettings__StoreLocation__NameTypeThumbprint前のフィールドの種類として「 Thumbprint」を入力します。AppSettings__LoadBalancerSettings__RedisConnectionStringXXXXXXXXXXXX:XXXX,password=XXXXXXRedis サーバーを設定するために必要な接続文字列です。サーバーの URL、パスワード、ポートを含みます。また、Orchestrator ノードと Redis サービスの間の SSL 暗号化接続を有効化することもできます。 AppSettings__LoadBalancerSettings__SlidingExpirationTimeInSeconds秒数 キャッシュ内項目のスライド式有効期限です。この有効期限は、Redis キャッシュとメモリ内キャッシュの両方に適用されます。 AppSettings__RedisSettings__UseRedisStoreCachetrue/falseOAuth クライアント データの Redis キャッシュを有効化するには、値を trueに設定します。これは、対話型サインインを使用して短時間に大量のロボットを接続する際のパフォーマンスの問題を回避するのに役立ちます。このキャッシュは、AppSettings__LoadBalancerSettingsで指定されたものと同じ Redis 接続文字列を使用します。
この設定はクライアントをキャッシュし、外部アプリケーションの更新は反映されないため、 外部アプリケーション 機能を使用している場合には推奨されません。AppSettings__RedisSettings__UseRedisStoreClientCachetrue/falseファーストパーティ クライアント (UiPath アプリケーション) またはサードパーティ クライアント (外部アプリケーション) の Redis キャッシュを有効化するには、値を true に設定します。大規模なデプロイの場合は、このフラグを有効化することをお勧めします。 App__Saml2ValidCertificateOnlytrue/falseAzure Web アプリを介した Orchestrator のデプロイの場合は、このパラメーターを falseに設定する必要があります。これは、SAML2 の信頼ストアに証明書を追加する必要があっても、Azure Web アプリでその操作が許可されていないためです。値をfalseに設定すると、証明書のチェックは無視されます。WEBSITE_LOAD_CERTIFICATESXXXXXXXXXXXXXXXXXXXXXXXXXXXX 以前にアップロードした証明書の拇印の値です。 WEBSITE_LOAD_USER_PROFILE1 ユーザー プロファイル。 -
変更を保存します。
詳細については、Microsoft Azure ドキュメントをご覧ください。
秘密キーの証明書を置き換える
秘密キーの証明書を新しい証明書に置き換える場合は、必ず次の手順に従ってください。
AppSettings__SigningCredentialSettings__StoreLocation__NameパラメーターとWEBSITE_LOAD_CERTIFICATESパラメーターの値を、新しい証明書の拇印に置き換えます。- Identity アプリ サービスを再起動します。
- Orchestrator アプリ サービスを再起動します。
Identity Server へ移行する
次の表で、MigrateTo-IdentityServer.ps1 で使用できる全パラメーターについて説明します。
| パラメーター | 説明 |
|---|---|
|
|
必須。 |
|
|
このパラメーターは以下の値を含むハッシュ テーブルです。
|
|
|
このパラメーターは以下の値を含むハッシュ テーブルです。
|
|
|
このパラメーターは以下の値を含むハッシュ テーブルです。
|
|
|
必須。Identity Server のパブリック アドレス。 /identity in lowercase. Example: https://[identity_server]/identity
|
|
|
必須。Orchestrator のパブリック アドレス。 |
|
|
任意です。必要なファイルをダウンロードおよび解凍するディレクトリの指定を有効化します。 |
|
|
Mandatory only for fresh deployments, when |
|
|
任意です。ホスト管理者の初回ログイン時にパスワードを強制的にリセットさせることができます。このパラメーターを省略すると、ホスト管理者のパスワードはワンタイム パスワードにはなりません。 |
|
|
Mandatory only for fresh deployments, when |
|
|
任意です。既定のテナント管理者の初回ログイン時にパスワードを強制的にリセットさせることができます。このパラメーターを省略すると、テナント管理者のパスワードはワンタイム パスワードにはなりません。 |
|
|
任意です。サービス プリンシパルを作成することなく、ユーザー自身の ID を利用して Azure App Service にパブリッシュを行えます。このパラメーターを使用すると、 |
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"