- Introdução
- Requisitos
- Melhores práticas
- Instalação
- Atualizando
- Servidor de Identidade
- Solução de problemas de erros de inicialização

Guia de instalação do Orchestrator
Considerações de Manutenção
linkÉ importante manter seu banco de dados do Identity Server livre de bagunça. Para fazer isso, recomendamos:
Usando a Solução de Manutenção do SQL Server
linkA Solução de Manutenção do SQL Server é um conjunto de scripts que permite que você execute backups, verificações de integridade, e manutenção de índices e estatísticas em todas as edições do Microsoft SQL Server, a partir da versão 2005. Veja este projeto do GitHub para obter mais informações.
Criando um banco de dados de arquivamento
linkÉ recomendável que você crie um banco de dados separado para salvar itens antes de excluí-los. Esse banco de dados funciona como um arquivamento para os itens que você pode precisar armazenar por determinadas razões, como auditorias.
-
Crie um novo banco de dados chamado, por exemplo,
UiPathIdentityArchives
:create database UiPathIdentityArchives
create database UiPathIdentityArchives -
Crie as seguintes tabelas de backup:
-
ArchiveLoginAttempts
com a mesma estrutura que a tabelaUserLoginAttempts
:select * into [UiPathIdentityArchives].[dbo].[ArchiveUserLoginAttempts] from [UiPath].[dbo].[UserLoginAttempts] where 1=2
select * into [UiPathIdentityArchives].[dbo].[ArchiveUserLoginAttempts] from [UiPath].[dbo].[UserLoginAttempts] where 1=2
-
Os dados antigos são copiados para esses arquivamentos antes de serem excluídos ao usar a consulta abaixo.
Excluindo dados antigos periodicamente
linkTentativas de login de usuário
Para excluir tentativas de login mais antigas do que 60 dias, por exemplo, use a consulta abaixo. Isso pode ser feito manualmente ou agendado em uma tarefa do SQL Server.
declare @NumberOfDaysToKeep int
set @NumberOfDaysToKeep = 60
if OBJECT_ID('[UiPathIdentityArchives].[dbo].[UserLoginAttemps]') = NULL
begin select * into [UiPathIdentityArchives].[dbo].[UserLoginAttemps] from [identity].UserLoginAttempts where 1=2 end
begin transaction
set identity_insert [UiPathIdentityArchives].[dbo].[UserLoginAttemps] on
insert into [UiPathIdentityArchives].[dbo].[UserLoginAttemps] ([Id],[PartitionId],[UserId],[UserNameOrEmailAddress],[ClientIpAddress],[ClientName],[BrowserInfo],[Result],[CreationTime],[AuthenticationProvider],[PartitionName])
select [Id],[PartitionId],[UserId],[UserNameOrEmailAddress],[ClientIpAddress],[ClientName],[BrowserInfo],[Result],[CreationTime],[AuthenticationProvider],[PartitionName]
from [identity].UserLoginAttempts where DateDiff(day, CreationTime, GetDate()) > @NumberOfDaysToKeep
delete from [identity].UserLoginAttempts where DateDiff(day, CreationTime, GetDate()) > @NumberOfDaysToKeep
commit transaction
declare @NumberOfDaysToKeep int
set @NumberOfDaysToKeep = 60
if OBJECT_ID('[UiPathIdentityArchives].[dbo].[UserLoginAttemps]') = NULL
begin select * into [UiPathIdentityArchives].[dbo].[UserLoginAttemps] from [identity].UserLoginAttempts where 1=2 end
begin transaction
set identity_insert [UiPathIdentityArchives].[dbo].[UserLoginAttemps] on
insert into [UiPathIdentityArchives].[dbo].[UserLoginAttemps] ([Id],[PartitionId],[UserId],[UserNameOrEmailAddress],[ClientIpAddress],[ClientName],[BrowserInfo],[Result],[CreationTime],[AuthenticationProvider],[PartitionName])
select [Id],[PartitionId],[UserId],[UserNameOrEmailAddress],[ClientIpAddress],[ClientName],[BrowserInfo],[Result],[CreationTime],[AuthenticationProvider],[PartitionName]
from [identity].UserLoginAttempts where DateDiff(day, CreationTime, GetDate()) > @NumberOfDaysToKeep
delete from [identity].UserLoginAttempts where DateDiff(day, CreationTime, GetDate()) > @NumberOfDaysToKeep
commit transaction
Fazendo backup do banco de dados
linkRecomendamos a implementação de backups regulares do banco de dados do SQL Server, como por exemplo backups semanais completos ou diários incrementais.
Além disso, recomendamos o uso do procedimento armazenado DatabaseBackup que é criado usando o script neste local.