automacao-identidade-ad/docs/plano-portal-autoatendiment...

659 lines
34 KiB
HTML

<!DOCTYPE html>
<html lang="pt-BR">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Dossiê Completo do Projeto: Plataforma Unificada de Trabalho Digital</title>
<style>
body { font-family: Arial, Helvetica, sans-serif; line-height: 1.6; margin: 0; padding: 0; background-color: #ffffff; color: #333; }
.container { max-width: 1200px; margin: 20px auto; padding: 20px; background-color: #fff; }
h1, h2, h3, h4 { color: #2c3e50; border-bottom: 2px solid #ecf0f1; padding-bottom: 10px; }
h1 { font-size: 2.5em; text-align: center; margin-bottom: 30px; }
h2 { font-size: 2em; margin-top: 40px; }
h3 { font-size: 1.5em; margin-top: 30px; }
h4 { font-size: 1.2em; margin-top: 25px; border-bottom: 1px dotted #bdc3c7; }
table { width: 100%; border-collapse: collapse; margin-top: 20px; box-shadow: 0 2px 5px rgba(0,0,0,0.1); }
th, td { border: 1px solid #ddd; padding: 12px; text-align: left; vertical-align: top; }
th { background-color: #f2f2f2; font-weight: bold; }
pre { background-color: #ffffff; border: 1px solid #cccccc; padding: 15px; overflow-x: auto; font-family: 'Consolas', 'Courier New', monospace; font-size: 0.9em; white-space: pre-wrap; word-wrap: break-word; }
code { font-family: 'Consolas', 'Courier New', monospace; background-color: #ecf0f1; padding: 2px 5px; border-radius: 4px; }
.summary { background-color: #f9f9f9; border-left: 5px solid #3498db; padding: 20px; margin-bottom: 30px; }
.highlight-kpi { background-color: #e8f5e9; border-left: 5px solid #4caf50; padding: 20px; margin-bottom: 30px; }
.note { background-color: #fff9c4; border-left: 5px solid #fbc02d; padding: 15px; margin: 20px 0; }
.danger-note { background-color: #ffebee; border-left: 5px solid #c62828; padding: 15px; margin: 20px 0; }
.acceptance-criteria { background-color: #e0f2f1; border-left: 5px solid #00796b; padding: 1px 20px; margin-top: 15px; }
.section { margin-bottom: 40px; }
</style>
</head>
<body>
<div class="container">
<h1>Dossiê Completo do Projeto: Plataforma Unificada de Trabalho Digital</h1>
<p style="text-align: center; font-style: italic; color: #7f8c8d;">Um blueprint consolidado para o investimento estratégico na modernização, segurança e eficiência da gestão de TI e RH.</p>
<p style="text-align: center;"><strong>Versão:</strong> Dossiê Final Consolidado | <strong>Data:</strong> 13 de outubro de 2025</p>
<div class="summary section">
<h3>Sumário Executivo para Gestão</h3>
<p>Esta proposta detalha a criação de uma <strong>Plataforma Unificada de Trabalho Digital</strong>, um investimento estratégico projetado para <strong>reduzir custos operacionais</strong>, <strong>aumentar a segurança e a conformidade (LGPD)</strong> e <strong>melhorar a agilidade organizacional</strong>. Atualmente, processos manuais de gestão de identidades (criação de usuários, resets de senha, gestão de grupos, desligamentos) consomem um tempo valioso das equipes de TI e RH, além de serem fontes de erro humano e riscos de segurança.</p>
<p>A plataforma proposta irá:
<ul style="list-style-type: none; padding: 0;">
<li><strong>Automatizar 80% das solicitações de TI rotineiras</strong>, liberando a equipe para focar em projetos de maior valor agregado.</li>
<li><strong>Unificar o acesso a sistemas-chave</strong> como Exchange, Nextcloud e Zammad em um dashboard central, transformando o portal no principal ponto de entrada para o ambiente de trabalho do colaborador.</li>
<li><strong>Mitigar riscos de segurança</strong> através da higienização automática de contas inativas e da automação de processos de desligamento, garantindo que acessos sejam revogados em tempo hábil.</li>
<li><strong>Empoderar colaboradores e gestores</strong> com ferramentas de autoatendimento, melhorando a produtividade e a satisfação.</li>
<li><strong>Centralizar e garantir a integridade dos dados de colaboradores</strong>, fornecendo ao RH e gestores uma visão única e confiável, diretamente do Active Directory.</li>
</ul>
Este documento apresenta o escopo completo, a justificativa de investimento através de KPIs mensuráveis, os fluxos de operação detalhados para todas as funcionalidades, os riscos e desafios esperados, os critérios de aceite para cada etapa e um plano de implementação faseado.
</div>
<div id="kpis" class="highlight-kpi section">
<h2>Justificativa de Investimento: KPIs e Metas de Sucesso</h2>
<p>O sucesso do projeto será medido por indicadores claros e mensuráveis. O projeto será considerado bem-sucedido ao atingir as metas estabelecidas abaixo dentro de 6 meses após o lançamento completo.</p>
<table>
<thead><tr><th>KPI</th><th>Métrica</th><th>Fonte de Dados</th><th>Meta de Sucesso</th><th>Impacto no Negócio</th></tr></thead>
<tbody>
<tr>
<td>Redução de Carga Operacional de TI</td>
<td>Volume de tickets (categorias: senha, criação de usuário, grupos)</td>
<td>Sistema de Chamados (Help Desk)</td>
<td><strong>Redução de 40%</strong></td>
<td>Redução de custos operacionais, realocação da equipe de TI para atividades estratégicas.</td>
</tr>
<tr>
<td>Aumento da Postura de Segurança</td>
<td>Nº de contas de usuários/computadores ativas e inativas > 90 dias</td>
<td>Relatórios do Painel de Automação</td>
<td><strong>Redução de 95%</strong></td>
<td>Minimização da superfície de ataque, conformidade com auditorias de segurança.</td>
</tr>
<tr>
<td>Agilidade no Ciclo de Vida do Colaborador</td>
<td>Tempo médio para provisionar um novo usuário / desativar um usuário desligado</td>
<td>Logs do Portal, Sistema de Chamados</td>
<td><strong>Provisionamento &lt; 10 min<br>Desligamento &lt; 5 min</strong></td>
<td>Melhora a produtividade (onboarding rápido) e a segurança (offboarding imediato).</td>
</tr>
<tr>
<td>Adoção como Hub Digital</td>
<td>Cliques em widgets de integração e links de aplicativos / Sessões totais</td>
<td>Logs de auditoria do Portal</td>
<td><strong>&gt; 30%</strong></td>
<td>Aumento da produtividade do colaborador, redução de tempo gasto procurando ferramentas.</td>
</tr>
<tr>
<td>Adoção e Satisfação do Usuário</td>
<td>% de resets de senha via portal vs. help desk; NPS (Net Promoter Score) da plataforma</td>
<td>Logs do Portal; Pesquisa de satisfação</td>
<td><strong>80% de autosserviço;<br>NPS &gt; 40</strong></td>
<td>Aumento da produtividade e autonomia dos colaboradores, melhora da experiência de trabalho.</td>
</tr>
</tbody>
</table>
</div>
<div id="catalog" class="section">
<h2>Catálogo de Módulos, Funcionalidades e Fluxos de Execução</h2>
<h3>Módulo 1: Portal do Colaborador (Hub Digital)</h3>
<h4>Autenticação de Usuário</h4>
<h4>Fluxo Detalhado de Execução</h4>
<pre>
[USUÁRIO]
| AÇÃO: Informa Login/Senha no formulário.
v
[FRONTEND]
| VALIDAÇÃO: Valida formato dos campos (ex: e-mail válido).
| AÇÃO: Envia credenciais (HTTPS) para o Backend.
v
[BACKEND API]
| VALIDAÇÃO: Recebe e valida a requisição HTTP.
| - Verifica Token CSRF (se aplicável).
| - Tenta autenticar via LDAPS (bind) com as credenciais.
| TESTE: O bind LDAPS foi bem-sucedido?
| - Se SUCESSO:
| - AÇÃO: Gera Token de Sessão (JWT) para o usuário.
| - AÇÃO: Loga "Login Success" (UserLogin, SourceIP, SourceHostname, SourceLocation).
| - AÇÃO: Retorna o Token de Sessão para o Frontend.
| - Se FALHA:
| - AÇÃO: Loga "Login Failure" (UserLogin, SourceIP, SourceHostname, SourceLocation, Motivo).
| - AÇÃO: Retorna erro 401 (Não Autorizado) para o Frontend.
v
[FRONTEND]
| VALIDAÇÃO: Recebe a resposta da API.
| AÇÃO: Se Token recebido:
| - Armazena o Token (ex: LocalStorage, Cookies seguros).
| - Redireciona para a página inicial do portal.
| Senão (erro):
| - Exibe mensagem de erro (ex: "Usuário ou senha inválidos").
</pre>
<h4>Dashboard Unificado e Personalizado</h4>
<p>O Dashboard é a tela inicial para todos os usuários, apresentando widgets que consolidam informações de múltiplos sistemas como AD, Exchange, Nextcloud e Zammad.</p>
<div class="danger-note">
<h4>Pontos de Dificuldade e Desafios</h4>
<ul>
<li><strong>Latência:</strong> A performance do dashboard depende da velocidade de resposta das APIs de todos os sistemas integrados. Chamadas lentas podem degradar a experiência do usuário.</li>
<li><strong>Tratamento de Erros:</strong> A interface precisa lidar de forma elegante com falhas individuais de cada widget (ex: se a API do Zammad estiver offline, os outros widgets devem carregar normalmente).</li>
</ul>
</div>
<div class="acceptance-criteria">
<h4>Critérios de Aceite</h4>
<ul>
<li>✔ O dashboard deve carregar em menos de 3 segundos em condições normais de rede.</li>
<li>✔ Todos os widgets devem exibir dados precisos e atualizados no momento do carregamento.</li>
<li>✔ Se uma integração falhar, o widget correspondente deve exibir uma mensagem de erro clara sem impedir o carregamento do restante da página.</li>
<li>✔ A seção "Meus Aplicativos" deve exibir apenas os links configurados para o domínio e departamento do usuário logado.</li>
</ul>
</div>
<h4>Alteração de Senha (Self-Service)</h4>
<div class="danger-note">
<h4>Pontos de Dificuldade e Desafios</h4>
<ul>
<li><strong>Sincronização Atômica:</strong> Garantir que a senha seja alterada em múltiplos ADs (principal e de e-mail) de forma transacional é complexo. Uma falha no segundo AD após o sucesso no primeiro deixa as senhas dessincronizadas.</li>
</ul>
</div>
<div class="acceptance-criteria">
<h4>Critérios de Aceite</h4>
<ul>
<li>✔ O usuário consegue alterar sua senha com sucesso em ambos os ADs.</li>
<li>✔ Em caso de falha de sincronização, um log de erro detalhado é gerado e o usuário recebe uma notificação instruindo-o a contatar o suporte.</li>
<li>✔ O usuário recebe um e-mail de confirmação após a alteração bem-sucedida.</li>
</ul>
</div>
<h4>Fluxo Detalhado de Execução</h4>
<pre>
[USUÁRIO]
| AÇÃO: Preenche formulário com senha atual e nova senha (duas vezes).
v
[FRONTEND]
| VALIDAÇÃO: Valida complexidade da nova senha (tamanho, caracteres especiais).
| - Confere se nova senha e confirmação são iguais.
| AÇÃO: Envia requisição (HTTPS) para o Backend (incluindo Token de Sessão).
v
[BACKEND API]
| VALIDAÇÃO: Valida o Token de Sessão (autenticação e autorização).
| - Carrega configurações específicas do domínio do usuário (do BD de Configurações).
| AÇÃO: Loga "PasswordChange Attempt" (UserLogin, SourceIP, TargetObject).
| AÇÃO: Invoca script PowerShell Set-UserPassword.ps1 com parâmetros (usuário, senha antiga, nova senha, AD_SERVER).
v
[POWERSHELL SCRIPT]
| AÇÃO: Conecta ao AD Principal usando a Conta de Serviço.
| VALIDAÇÃO: Tenta autenticar o usuário com a senha antiga.
| TESTE: Autenticação da senha antiga bem-sucedida?
| - Se SUCESSO:
| - AÇÃO: Executa Set-ADAccountPassword no AD Principal com a nova senha.
| - TESTE: Troca de senha no AD Principal bem-sucedida?
| - Se SUCESSO:
| - AÇÃO: Se houver AD de E-mail separado, repete os passos de conexão e troca de senha lá.
| - VALIDAÇÃO: Troca de senha no AD de E-mail bem-sucedida?
| - Se SUCESSO:
| - AÇÃO: Retorna SUCESSO consolidado para a API.
| - Se FALHA (E-mail):
| - AÇÃO: Retorna ERRO consolidado para a API (com detalhes).
| - Se FALHA (Principal):
| - AÇÃO: Retorna ERRO consolidado para a API (com detalhes).
| - Se FALHA (Senha Antiga):
| - AÇÃO: Retorna ERRO "Senha Antiga Inválida" para a API.
v
[BACKEND API]
| VALIDAÇÃO: Recebe o resultado do script PowerShell.
| AÇÃO: Loga o resultado final ("PasswordChange Success" ou "PasswordChange Failure" com motivo).
| AÇÃO: Dispara e-mail de notificação (usando template do cliente) para o usuário.
| AÇÃO: Retorna resposta JSON para o Frontend.
v
[FRONTEND]
| VALIDAÇÃO: Exibe mensagem de sucesso ou erro para o USUÁRIO.
</pre>
<h4>Atualização de Foto de Perfil</h4>
<h4>Fluxo Detalhado de Execução</h4>
<pre>
[USUÁRIO]
| AÇÃO: Seleciona e carrega uma imagem (PNG/JPG).
v
[FRONTEND]
| VALIDAÇÃO: Valida tipo de arquivo (PNG/JPG) e tamanho (ex: <2MB).
| AÇÃO: Envia a imagem (HTTPS) para o Backend (incluindo Token de Sessão).
v
[BACKEND API]
| VALIDAÇÃO: Valida Token de Sessão e recebe a imagem.
| AÇÃO: Loga "PhotoUpdate Attempt" (UserLogin, SourceIP, TargetObject).
| AÇÃO: Invoca script PowerShell Set-UserProfilePhoto.ps1 com parâmetros (usuário, imagem em base64/bytes).
v
[POWERSHELL SCRIPT]
| AÇÃO: Recebe a imagem.
| VALIDAÇÃO: Redimensiona e comprime a imagem para um tamanho adequado (ex: <100KB).
| AÇÃO: Converte a imagem para um array de bytes.
| AÇÃO: Conecta ao AD Principal usando a Conta de Serviço.
| AÇÃO: Grava o array de bytes no atributo thumbnailPhoto do usuário.
| TESTE: Gravação no AD bem-sucedida?
| - Se SUCESSO:
| - AÇÃO: Retorna SUCESSO para a API.
| - Se FALHA:
| - AÇÃO: Retorna ERRO para a API (com detalhes).
v
[BACKEND API]
| VALIDAÇÃO: Recebe o resultado do script PowerShell.
| AÇÃO: Loga o resultado final ("PhotoUpdate Success" ou "PhotoUpdate Failure").
| AÇÃO: Retorna resposta JSON para o Frontend.
v
[FRONTEND]
| VALIDAÇÃO: Exibe mensagem de sucesso/erro.
| AÇÃO: Se sucesso:
| - Atualiza a foto exibida na interface do USUÁRIO.
</pre>
<h3>Módulo 2: Portal do Gestor</h3>
<h4>Criação de Novo Colaborador</h4>
<div class="danger-note">
<h4>Pontos de Dificuldade e Desafios</h4>
<ul>
<li><strong>Complexidade do Workflow:</strong> O processo envolve criação de conta no AD, adição a múltiplos grupos, criação de mailbox em outro sistema e envio de notificações. A falha em qualquer etapa precisa ser tratada para evitar contas parcialmente configuradas.</li>
</ul>
</div>
<div class="acceptance-criteria">
<h4>Critérios de Aceite</h4>
<ul>
<li>✔ Um gestor autorizado consegue preencher o formulário e criar um novo usuário com sucesso.</li>
<li>✔ A conta do novo usuário é criada na OU correta, com os atributos corretos e nos grupos padrão definidos nas configurações.</li>
<li>✔ A mailbox do novo usuário é criada e funcional.</li>
<li>✔ O gestor e o novo colaborador recebem os e-mails de notificação corretos.</li>
</ul>
</div>
<h4>Fluxo Detalhado de Execução</h4>
<pre>
[GESTOR]
| AÇÃO: Preenche formulário com dados do novo colaborador (nome, sobrenome, departamento, etc.).
v
[FRONTEND]
| VALIDAÇÃO: Valida formato dos campos (ex: e-mail do gestor válido, dados obrigatórios).
| AÇÃO: Envia requisição (HTTPS) para o Backend (incluindo Token de Sessão).
v
[BACKEND API]
| VALIDAÇÃO: Valida Token de Sessão (autenticação e autorização do GESTOR).
| - TESTE: O usuário é um gestor autorizado a criar usuários?
| - Carrega variáveis de configuração do BD (OU padrão, grupos padrão, AD_SERVER, etc.).
| AÇÃO: Loga "UserCreation Attempt" (GestorLogin, SourceIP, DadosPropostos).
| AÇÃO: Invoca script PowerShell New-ADUserFromTemplate.ps1 com parâmetros (dados do form, variáveis de config).
v
[POWERSHELL SCRIPT]
| AÇÃO: Conecta ao AD Principal usando a Conta de Serviço.
| AÇÃO: Gera uma senha temporária segura para o novo usuário.
| AÇÃO: Cria o usuário no AD Principal com todos os atributos fornecidos.
| TESTE: Criação do usuário no AD bem-sucedida?
| - Se SUCESSO:
| - AÇÃO: Adiciona o novo usuário aos grupos padrão definidos nas variáveis.
| - AÇÃO: Se houver AD de E-mail/Exchange separado, cria o mailbox.
| - TESTE: Criação do mailbox bem-sucedida?
| - Se SUCESSO:
| - AÇÃO: Retorna SUCESSO consolidado (com login e senha temporária) para a API.
| - Se FALHA (E-mail):
| - AÇÃO: Loga erro específico. Retorna ERRO para a API.
| - Se FALHA (Principal):
| - AÇÃO: Loga erro específico. Retorna ERRO para a API.
v
[BACKEND API]
| VALIDAÇÃO: Recebe o resultado do script PowerShell.
| AÇÃO: Loga o resultado final ("UserCreation Success" ou "UserCreation Failure" com motivo).
| AÇÃO: Dispara e-mails de notificação (usando templates do cliente):
| - Para o novo colaborador (boas-vindas com login/senha temporária).
| - Para o gestor (confirmação da criação).
| AÇÃO: Retorna resposta JSON para o Frontend.
v
[FRONTEND]
| VALIDAÇÃO: Exibe mensagem de sucesso/erro para o GESTOR, incluindo os dados do novo usuário e senha temporária se for um sucesso.
</pre>
<h4>Criação de Grupos de Distribuição</h4>
<h4>Fluxo Detalhado de Execução</h4>
<pre>
[GESTOR]
| AÇÃO: Preenche formulário com nome do grupo, descrição e lista de membros (e-mails).
v
[FRONTEND]
| VALIDAÇÃO: Valida formato dos campos (ex: nome do grupo, e-mails).
| AÇÃO: Envia requisição (HTTPS) para o Backend (incluindo Token de Sessão).
v
[BACKEND API]
| VALIDAÇÃO: Valida Token de Sessão e permissão do GESTOR para criar grupos.
| AÇÃO: Loga "GroupCreation Attempt" (GestorLogin, SourceIP, GroupName, Members).
| AÇÃO: Invoca script PowerShell New-DistributionGroup.ps1 com parâmetros.
v
[POWERSHELL SCRIPT]
| AÇÃO: Conecta ao AD Principal usando a Conta de Serviço.
| AÇÃO: Cria o grupo de distribuição no AD.
| TESTE: Criação do grupo bem-sucedida?
| - Se SUCESSO:
| - AÇÃO: Define o gestor como "ManagedBy" do grupo.
| - AÇÃO: Para cada membro na lista:
| - TESTE: É um e-mail interno (existente no AD) ou externo?
| - Se INTERNO: AÇÃO: Adiciona usuário ao grupo.
| - Se EXTERNO: AÇÃO: Cria um ADContact e o adiciona ao grupo.
| - TESTE: Adição de todos os membros bem-sucedida?
| - Se SUCESSO:
| - AÇÃO: Retorna SUCESSO para a API.
| - Se FALHA (membros):
| - AÇÃO: Retorna ERRO (com lista de membros falhos) para a API.
| - Se FALHA (Grupo):
| - AÇÃO: Retorna ERRO para a API (com detalhes).
v
[BACKEND API]
| VALIDAÇÃO: Recebe o resultado do script PowerShell.
| AÇÃO: Loga o resultado final ("GroupCreation Success" ou "GroupCreation Failure").
| AÇÃO: Retorna resposta JSON para o Frontend.
v
[FRONTEND]
| VALIDAÇÃO: Exibe mensagem de sucesso/erro para o GESTOR.
</pre>
<h3>Módulo 3: Gestão de Colaboradores (RH)</h3>
<h4>Painel de Colaboradores, Consulta e Edição</h4>
<p>Uma interface para o RH e gestores (com visão restrita à sua equipe) para visualizar, consultar e editar informações dos colaboradores.</p>
<h4>Fluxo Detalhado de Execução (Consulta e Edição)</h4>
<pre>
[USUÁRIO RH/GESTOR]
| AÇÃO: Navega para a seção "Colaboradores Ativos".
v
[FRONTEND]
| AÇÃO: Envia requisição (HTTPS) para o Backend para buscar a lista.
v
[BACKEND API]
| VALIDAÇÃO: Valida Token de Sessão e permissão (RH ou Gestor).
| - TESTE: Se Gestor, aplica filtro para mostrar apenas sua equipe.
| AÇÃO: Invoca script PowerShell Get-AllActiveUsers.ps1.
v
[POWERSHELL SCRIPT]
| AÇÃO: Busca todos os usuários ativos, aplicando os filtros.
| VALIDAÇÃO: Filtra os atributos retornados para incluir apenas os relevantes.
| AÇÃO: Retorna lista de usuários para a API.
v
[BACKEND API]
| AÇÃO: Retorna lista de usuários em JSON para o Frontend.
v
[FRONTEND]
| AÇÃO: Exibe a lista de colaboradores.
| AÇÃO: [USUÁRIO RH] clica em "Editar" e modifica campos.
| VALIDAÇÃO: Valida formato dos campos editados.
| AÇÃO: Envia requisição (HTTPS) de atualização para o Backend.
v
[BACKEND API (Update)]
| VALIDAÇÃO: Valida Token de Sessão e permissão (apenas RH).
| AÇÃO: Loga "UserDetailsUpdate Attempt".
| AÇÃO: Invoca script PowerShell Set-ADUserAttributes.ps1.
v
[POWERSHELL SCRIPT (Update)]
| AÇÃO: Conecta ao AD e executa Set-ADUser para atualizar os atributos.
| TESTE: Atualização bem-sucedida?
| - Se SUCESSO: Retorna SUCESSO.
| - Se FALHA: Retorna ERRO.
v
[BACKEND API (Update)]
| AÇÃO: Loga o resultado final e retorna para o Frontend.
v
[FRONTEND]
| VALIDAÇÃO: Exibe mensagem de sucesso/erro.
</pre>
<h4>Processo de Desligamento Automatizado</h4>
<div class="danger-note">
<h4>Pontos de Dificuldade e Desafios</h4>
<ul>
<li><strong>Orquestração de Múltiplos Sistemas:</strong> O processo depende da comunicação bem-sucedida com AD e Exchange. Falhas de conexão ou permissão podem interromper o fluxo.</li>
<li><strong>Timing:</strong> O processo deve ser imediato para garantir a segurança, exigindo alta disponibilidade dos sistemas envolvidos.</li>
</ul>
</div>
<div class="acceptance-criteria">
<h4>Critérios de Aceite</h4>
<ul>
<li>✔ Um usuário de RH autorizado consegue iniciar e concluir o processo de desligamento.</li>
<li>✔ A conta do usuário no AD é imediatamente desativada.</li>
<li>✔ A mailbox do usuário é convertida para Shared Mailbox.</li>
<li>✔ O gestor do usuário desligado recebe permissão de acesso total à Shared Mailbox.</li>
<li>✔ O redirecionamento de e-mails para o gestor é ativado.</li>
<li>✔ O gestor e o RH recebem e-mails de confirmação detalhando as ações executadas.</li>
</ul>
</div>
<h4>Fluxo Detalhado de Execução</h4>
<pre>
[USUÁRIO RH]
| AÇÃO: Na tela de detalhes do colaborador, clica em "Desligar".
v
[FRONTEND]
| AÇÃO: Exibe modal de confirmação.
| AÇÃO: Envia requisição (HTTPS) para o Backend (incluindo Token de Sessão).
v
[BACKEND API]
| VALIDAÇÃO: Valida Token de Sessão e permissão (apenas RH).
| AÇÃO: Loga "Offboarding Initiated".
| AÇÃO: Invoca script PowerShell Automate-Offboarding.ps1.
v
[POWERSHELL SCRIPT]
| AÇÃO: Conecta ao AD e Exchange.
| AÇÃO: Desativa a conta do usuário no AD (Disable-ADAccount).
| TESTE: Desativação da conta bem-sucedida?
| - Se SUCESSO:
| - AÇÃO: Converte a Mailbox para Shared Mailbox.
| - TESTE: Conversão bem-sucedida?
| - Se SUCESSO:
| - AÇÃO: Adiciona permissão "Full Access" para o gestor.
| - AÇÃO: Configura o redirecionamento de e-mail.
| - TESTE: Permissões/Redirecionamento bem-sucedidos?
| - Se SUCESSO:
| - AÇÃO: Retorna SUCESSO consolidado.
| - Se FALHA: Retorna ERRO.
| - Se FALHA: Retorna ERRO.
| - Se FALHA: Retorna ERRO.
v
[BACKEND API]
| VALIDAÇÃO: Recebe o resultado do script.
| AÇÃO: Loga o resultado final.
| AÇÃO: Dispara e-mails de notificação para gestor e RH.
| AÇÃO: Retorna resposta JSON para o Frontend.
v
[FRONTEND]
| VALIDAÇÃO: Exibe mensagem de confirmação de sucesso/erro.
</pre>
<h3>Módulo 4: Automação e Governança (Backend)</h3>
<h4>Higienização de Contas (Computadores e Usuários)</h4>
<div class="danger-note">
<h4>Pontos de Dificuldade e Desafios</h4>
<ul>
<li><strong>Definição de Exceções:</strong> Identificar e configurar corretamente as OUs ou contas de serviço que devem ser excluídas da limpeza automática é crucial para evitar a desativação de contas importantes.</li>
<li><strong>Precisão do `lastLogonTimestamp`:</strong> Este atributo do AD não é replicado em tempo real, podendo haver uma latência. As regras devem levar essa imprecisão em consideração.</li>
</ul>
</div>
<div class="acceptance-criteria">
<h4>Critérios de Aceite</h4>
<ul>
<li>✔ O job agendado executa no horário configurado.</li>
<li>✔ Apenas contas que excederam o limiar de inatividade e não estão na lista de exceções são desativadas.</li>
<li>✔ Um relatório detalhado é gerado e enviado para os destinatários corretos (TI, RH, Gestores).</li>
<li>✔ A execução do job (sucesso, falha, nº de contas desativadas) é registrada nos logs de auditoria.</li>
</ul>
</div>
<h4>Fluxo Detalhado de Execução (Higienização de Computadores)</h4>
<pre>
[AGENDADOR DE TAREFAS]
| AÇÃO: Dispara o job em um horário programado.
v
[SCRIPT POWERSHELL]
| VALIDAÇÃO: Lê as configurações (dias de inatividade X, e-mail de TI).
| AÇÃO: Conecta ao AD.
| AÇÃO: Busca computadores inativos há mais de X dias.
| TESTE: Existe lista de computadores inativos e eles ainda estão ativos?
| - Se SIM:
| - AÇÃO: Para cada computador na lista:
| - VALIDAÇÃO: Confere se o computador não está em uma OU de exceção.
| - AÇÃO: Desativa a conta no AD (Disable-ADAccount).
| - AÇÃO: Adiciona o computador a uma lista para o relatório.
| - AÇÃO: Gera relatório (HTML/CSV) com a lista.
| - CONFIRMAÇÃO: Envia o relatório por e-mail para a equipe de TI.
| - AÇÃO: Loga "ComputerCleanup Success".
| - Se NÃO (ou erro):
| - AÇÃO: Loga "ComputerCleanup NoChanges" ou "Failure".
| FIM
</pre>
<h4>Mapeamento Organizacional</h4>
<div class="danger-note">
<h4>Pontos de Dificuldade e Desafios</h4>
<ul>
<li><strong>Extensão do Esquema do AD:</strong> Esta é uma operação de altíssimo risco, irreversível e que pode impactar toda a floresta do Active Directory se não for executada corretamente.</li>
<li><strong>Lógica de Hierarquia:</strong> A lógica para determinar o "cargo" com base na estrutura de gerência pode ser complexa.</li>
</ul>
</div>
<div class="acceptance-criteria">
<h4>Critérios de Aceite</h4>
<ul>
<li>✔ O atributo customizado é criado com sucesso no Esquema do AD (após testes em laboratório).</li>
<li>✔ O job agendado popula corretamente o atributo para todos os usuários com base na sua posição na hierarquia.</li>
<li>✔ A execução do job é registrada nos logs de auditoria.</li>
</ul>
</div>
<h4>Fluxo Detalhado de Execução</h4>
<pre>
[AGENDADOR DE TAREFAS]
| AÇÃO: Dispara o job em um horário programado.
v
[SCRIPT POWERSHELL]
| VALIDAÇÃO: Conecta ao AD e lê o nome do atributo customizado.
| AÇÃO: Busca todos os usuários ativos com o atributo "manager" preenchido.
| TESTE: Existem usuários com "manager"?
| - Se SIM:
| - AÇÃO: Constrói uma árvore hierárquica em memória.
| - AÇÃO: Para cada usuário na árvore:
| - VALIDAÇÃO: Determina o organizationalRole com base na posição.
| - TESTE: O organizationalRole calculado é diferente do valor atual no AD?
| - Se SIM:
| - AÇÃO: Atualiza o atributo customizado (Set-ADUser -Replace ...).
| - AÇÃO: Adiciona o usuário à lista de atualizados para o log.
| - CONFIRMAÇÃO: Loga "OrgChartUpdate Success" com o número de usuários atualizados.
| - Se NÃO (ou erro):
| - AÇÃO: Loga "OrgChartUpdate Failure".
| FIM
</pre>
<h3>Módulo 5: Painel de Auditoria e Relatórios</h3>
<h4>Geração de Relatório de Atividade de Login</h4>
<div class="note"><strong>Pré-requisito Técnico:</strong> A funcionalidade de relatório de login depende da existência de um sistema centralizado de coleta de logs (como SIEM ou Windows Event Forwarding).</div>
<h4>Fluxo Detalhado de Execução</h4>
<pre>
[USUÁRIO SUPORTE]
| AÇÃO: Define filtros (usuário, período) e solicita relatório.
v
[FRONTEND]
| VALIDAÇÃO: Valida formato dos filtros.
| AÇÃO: Envia requisição para o Backend.
v
[BACKEND API]
| VALIDAÇÃO: Valida Token de Sessão e permissão.
| AÇÃO: Loga "LoginReport Generation Attempt".
| AÇÃO: Constrói e executa a query de busca no SIEM.
v
[SIEM / COLETOR DE LOGS]
| AÇÃO: Processa a query (ex: busca pelo EventID 4624) e retorna os dados.
v
[BACKEND API]
| VALIDAÇÃO: Recebe os resultados do SIEM.
| AÇÃO: Formata os dados e retorna para o painel.
| AÇÃO: Loga "LoginReport Generation Success" ou "Failure".
v
[FRONTEND]
| VALIDAÇÃO: Exibe relatório em uma tabela interativa.
</pre>
<h4>Exportação de Logs de Auditoria</h4>
<h4>Fluxo Detalhado de Execução</h4>
<pre>
[USUÁRIO SUPORTE/ADMIN]
| AÇÃO: No Painel de Auditoria, aplica filtros e clica em "Exportar".
v
[FRONTEND]
| AÇÃO: Exibe modal solicitando e-mail de destino e justificativa.
| AÇÃO: Envia requisição (HTTPS) para o Backend.
v
[BACKEND API]
| VALIDAÇÃO: Valida Token de Sessão e permissão.
| - VALIDAÇÃO: Confere se e-mail de destino e justificativa são fornecidos.
| AÇÃO: Loga "AuditLog Export Attempt".
| AÇÃO: Executa a consulta nos logs internos do portal com os filtros aplicados.
| TESTE: Consulta de logs bem-sucedida e há dados a exportar?
| - Se SIM:
| - AÇÃO: Gera um arquivo (CSV/PDF) com os logs.
| - AÇÃO: Anexa o arquivo e envia um e-mail para o endereço de destino.
| - CONFIRMAÇÃO: Loga "AuditLog Export Success" (com hash do arquivo).
| - AÇÃO: Retorna SUCESSO para o Frontend.
| - Se NÃO (ou erro):
| - AÇÃO: Loga "AuditLog Export Failure".
| - AÇÃO: Retorna ERRO para o Frontend.
v
[FRONTEND]
| VALIDAÇÃO: Exibe mensagem de sucesso/erro para o USUÁRIO.
</pre>
</div>
<div id="fases" class="section">
<h2>Fases de Implementação Unificadas</h2>
<p>Propomos uma implementação faseada para mitigar riscos, garantir a adoção e permitir uma entrega de valor contínua.</p>
<table>
<thead><tr><th>Fase</th><th>Título</th><th>Duração</th><th>Entregáveis Chave e Valor para o Negócio</th></tr></thead>
<tbody>
<tr>
<td>1</td>
<td>Análise e Arquitetura Estratégica</td>
<td>3-4 Semanas</td>
<td>Blueprint técnico, análise de impacto (DPIA/LGPD), e <strong>planejamento da extensão do Esquema AD</strong>. <strong>Valor:</strong> Garante que a fundação do projeto é segura, escalável e alinhada com os requisitos de negócio.</td>
</tr>
<tr>
<td>2</td>
<td>Prova de Conceito (PoC) de Riscos</td>
<td>2 Semanas</td>
<td>Validação das integrações mais complexas (Multi-AD, SIEM). <strong>Valor:</strong> Elimina os principais riscos técnicos antes do investimento em desenvolvimento.</td>
</tr>
<tr>
<td>3</td>
<td>MVP - Autoatendimento Essencial</td>
<td>6-8 Semanas</td>
<td>Portal com login, troca de senha e atualização de perfil. <strong>Valor:</strong> Entrega rápida do maior redutor de tickets de TI, gerando ROI imediato.</td>
</tr>
<tr>
<td>4</td>
<td>Módulo de Gestão (Gestores e RH)</td>
<td>5-6 Semanas</td>
<td>Painel de gestão com criação de usuários, grupos, e o <strong>módulo de desligamento do RH</strong>. <strong>Valor:</strong> Agiliza o ciclo de vida do colaborador e fortalece a segurança do offboarding.</td>
</tr>
<tr>
<td>5</td>
<td>Módulos de Automação e Auditoria</td>
<td>5-7 Semanas</td>
<td>Scripts de higienização, organograma, e o painel de auditoria completo. <strong>Valor:</strong> Implementa a governança proativa, reduzindo riscos de forma contínua e automática.</td>
</tr>
<tr>
<td>6</td>
<td>Integração com Sistemas Externos e Catálogo de Apps</td>
<td>4-6 Semanas</td>
<td>Conectores para Exchange, Nextcloud e Zammad; Dashboard unificado funcional; Painel de gestão para o catálogo de aplicativos. <strong>Valor:</strong> Transforma o portal em um hub de produtividade, aumentando o engajamento e a eficiência.</td>
</tr>
<tr>
<td>7</td>
<td>Painel de Gestão e Configurações</td>
<td>3-4 Semanas</td>
<td>Implementação completa do Painel de Configurações para gerenciar AD, e-mail, integrações e variáveis de scripts. <strong>Valor:</strong> Oferece flexibilidade e controle total sobre o sistema para os administradores, permitindo adaptações futuras sem código.</td>
</tr>
<tr>
<td>8</td>
<td>Lançamento e Melhoria Contínua</td>
<td>Contínuo</td>
<td>Plataforma completa em produção, monitoramento de KPIs, <strong>plano de comunicação e treinamento de usuários</strong>, e planejamento de futuras melhorias. <strong>Valor:</strong> Garante a adoção, o sucesso a longo prazo e a evolução da plataforma como um ativo estratégico.</td>
</tr>
</tbody>
</table>
</div>
</div>
</body>
</html>