- Introdução
- Requisitos
- Melhores práticas
- Instalação
- Atualizando
- Servidor de Identidade
- Solução de problemas de erros de inicialização
Execute o script Publish-IdentityServer.ps1 para implantação inicial ou atualização do Identity Server.
Publicar no Identity Server
A tabela a seguir descreve todos os parâmetros que você pode usar com o script Publish-IdentityServer.ps1.
| Parâmetro | Description |
|---|---|
|
| Mandatory. Indicates the type of scenario you want to start. As seguintes opções estão disponíveis:
|
|
| 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. |
|
| Obrigatório. O token de acesso do Azure para o ID principal do serviço. |
|
| Obrigatório. O ID de assinatura do Azure para o Serviço de Aplicativo que hospeda o Orchestrator. |
|
| Obrigatório. O ID de tenant do Azure. |
|
| Obrigatório. O URL da instância do Orchestrator. |
|
| Obrigatório. A URL do Identity Server. /identity in lowercase.
Exemplo: |
|
| Obrigatório. A URL do catálogo de recursos. |
|
| Esse parâmetro é uma tabela de hash que contém os seguintes valores:
|
|
| Esse parâmetro é uma tabela de hash que contém os seguintes valores:
|
|
| Obrigatório. Indique o caminho completo ou o caminho relativo do arquivamento UiPath.IdentityServer.Web.zip. |
|
| Obrigatório. Indique o caminho completo ou o caminho relativo do arquivamento UiPath.IdentityServer.Migrator.Cli.zip. |
|
| Opcional. Ele pode ser usado apenas se o slot de implantação do Serviço de Aplicativo do Identity Server for diferente do slot de Serviço de Aplicativo de produção padrão definido pelo Azure. |
|
| Opcional. Se presente, ele interrompe a aplicação antes da implantação e reinicia após a conclusão da implantação. |
|
| Opcional. Se presente, a implantação continua sem qualquer confirmação do usuário. |
|
| Opcional. Permite a especificação de um diretório em que os arquivos necessários são baixados e descompactados. |
|
| 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 |
O script Publish-IdentityServer.ps1 é usado para a implantação inicial ou atualização do Identity Server. O script pressupõe que o aplicativo da Web já tenha a string de conexão do banco de dados DefaultConnection configurada.
.\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
Após executar o script acima, certifique-se de executar as etapas extras listadas abaixo para uma implantação inicial bem-sucedida.
Após publicar o Identity Server, execute as seguintes etapas:
- Acesse o Portal do Azure.
- Selecione seu Serviço de Aplicativo do Identity Server.
- No menu Certificados, acesse Trazer seus próprios certificados.
- Carregue um arquivo de certificado de chave privada
.pfxcom uma senha válida.Observação:Esse certificado é usado para assinar os tokens de acesso e os tokens de ID.
- No menu Configuração, adicione as seguintes configurações de aplicativo exatamente como escrito na coluna Configurações do Aplicativo:
|
Configuração de aplicativos |
Valor |
Description |
|---|---|---|
|
|
https://[identity_server]/identity |
O URL pública do Identity Server. |
|
|
Usuário atual |
Ela deve apontar para CurrentUser. |
|
|
XXXXXXXXXXXXXXXXXXXXXXXXXXXX |
A impressão digital do seu certificado que você carregou anteriormente. |
|
|
|
Enter
|
|
|
|
The 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. |
|
|
Número de segundos |
The sliding expiration time of an item inside the cache. This expiration time applies to both Redis Cache and InMemory Cache. |
|
|
|
Defina seu valor como
This 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 |
|
|
|
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. |
|
|
|
Para implantações do Orchestrator por meio de um aplicativo web do Azure, esse parâmetro deve ser definido como
This 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 |
|
|
XXXXXXXXXXXXXXXXXXXXXXXXXXXX |
O valor da impressão digital do seu certificado que você carregou anteriormente. |
|
|
1 | O perfil do usuário. |
| Opcional. Este parâmetro é usado apenas para implantações do Governo dos EUA. |
Salve as alterações.
Encontre mais detalhes na documentação do Microsoft Azure.
Substituição do certificado de chave privada
Ao substituir um certificado de chave privada por um novo, certifique-se de seguir estas etapas:
- Substitua os valores dos parâmetros
AppSettings__SigningCredentialSettings__StoreLocation__NameeWEBSITE_LOAD_CERTIFICATESpela impressão digital do novo certificado. - Reinicie o serviço do aplicativo Identity.
- Reinicie o serviço do aplicativo do Orchestrator.
Migrar para o Identity Server
A seguinte tabela descreve todos os parâmetros que podem ser usados com a MigrateTo-IdentityServer.ps1.
| Parâmetro | Description |
|---|---|
|
| Mandatory .
Indique o caminho completo ou o caminho relativo do arquivamento |
|
| Esse parâmetro é uma tabela de hash que contém os seguintes valores:
|
|
| Esse parâmetro é uma tabela de hash que contém os seguintes valores:
|
|
| Esse parâmetro é uma tabela de hash que contém os seguintes valores:
|
|
| Obrigatório. O endereço público do Identity Server. /identity in lowercase.
Exemplo: |
|
| Obrigatório. O endereço público do Orchestrator. |
|
| Opcional. Permite a especificação de um diretório em que os arquivos necessários são baixados e descompactados. |
|
| Obrigatório apenas para novas implantações, quando-action is set to Deploy .
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. |
|
| Optional. 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. |
|
| Obrigatório apenas para novas implantações, quando-action is set to Deploy .
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. |
|
| Optional. 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. |
|
| 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 |
O script MigrateTo-IdentityServer.ps1 é usado para migrar dados do usuário do Orchestrator para o Identity Server e definir as configurações para ambos. Ele define a autoridade de identidade do Orchestrator para o Identity Server e cria a configuração do cliente para o Orchestrator no Identity Server.
O script pressupõe que o Orchestrator e o Identity Server já estejam publicados.
.\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"