Repasse: Auditoria SEI
Roteiro para auditoria SEI
Tipos de Solicitações
- Versões de determinado documento
- Geração de PDF antes da assinatura
- Visualizações (Acesso) do documento por outras pessoas
- Assinatura em determinado documento
- Data da concessão de permissão ao usuário em determinado setor
- Histórico de Logs (ações realizadas) por determinado servidor na unidade
Step by Step
- Acessar o processo 0043.002757/2019-50
- Identificar os id_protocolos do processo 0043.002757/2019-50
- A URL apresentada deverá conter o ID_PROCEDIMENTO referente ao processo;
- Com o numero do processo formatado , com isso é possível identificar os IDs dos documentos conforme script abaixo.
SELECT
orgao.sigla as orgao,
unidade.sigla as unidade,
documento.id_documento,
protocolo.protocolo_formatado,
tipo_procedimento.nome as 'tipo_procedimento',
protocolo.dta_geracao,
documento_protocolo.protocolo_formatado as 'protocolo_documento',
serie.nome as 'tipo_documento',
documento_protocolo.dta_geracao as 'data_documento'
FROM
protocolo
INNER JOIN procedimento ON procedimento.id_procedimento = protocolo.id_protocolo
INNER JOIN tipo_procedimento ON tipo_procedimento.id_tipo_procedimento = procedimento.id_tipo_procedimento
INNER JOIN unidade ON unidade.id_unidade = protocolo.id_unidade_geradora
INNER JOIN orgao ON orgao.id_orgao = unidade.id_orgao
LEFT JOIN documento ON documento.id_procedimento = protocolo.id_protocolo AND (documento.numero NOT LIKE '%Social%' OR documento.numero IS NULL)
LEFT JOIN protocolo documento_protocolo ON documento_protocolo.id_protocolo = documento.id_documento
LEFT JOIN serie ON serie.id_serie = documento.id_serie
WHERE
protocolo.protocolo_formatado = '9999.000221/2020-19'
ORDER BY tipo_procedimento.nome, protocolo.protocolo_formatado, documento.id_documento
- Identificar os tipos de “SIP.DBO.RECURSO” que podem estar relacionadas ao tipo de solicitação;
- Com o script a seguir é possivel identificar a relação geral de recursos utilizadas pelas ações consumidas na aplicação do SEI;
SELECT
s.sigla as "Sistema",
r.nome as "Recurso",
r.descricao as "DescRecurso"
FROM sip.dbo.recurso r
INNER JOIN sip.dbo.sistema s ON s.id_sistema = r.id_sistema
WHERE r.sin_ativo = 'S'
ORDER BY 1 ASC
- Acessar a Tabela SEI.DBO.Infra_Auditoria;
- Identificar as colunas necessárias na Query;
- Elaborar a Query;
- Realizar o tratamento da consulta no formato mais adequado.
Scripts Úteis
Versões de determinado documento
SELECT
vsd.versao as "Versao"
,p.protocolo_formatado as "Protocolo"
,un.sigla as "Unidade"
,CONCAT(us.sigla,' - ',us.nome) as "Servidor"
,s.nome as "TipoDocumento"
-- ,d.numero as "N."
,case sd.ordem
when 0 then 'Cabeçalho'
when 10 then 'Titulo do Documento'
when 30 then 'Corpo do Texto'
when 40 then 'Assinatura'
when 1000 then 'Rodape'
end as "Secao"
-- ,dc.conteudo as "Conteudo"
,vsd.conteudo as "ConteudoVersao"
,vsd.dth_atualizacao as "DataAtualizacao"
FROM
protocolo p
INNER JOIN documento d
ON d.id_documento = p.id_protocolo
INNER JOIN documento_conteudo dc
ON dc.id_documento = d.id_documento
INNER JOIN secao_documento sd
ON sd.id_documento = d.id_documento
INNER JOIN versao_secao_documento vsd
ON vsd.id_secao_documento = sd.id_secao_documento
INNER JOIN serie s
ON s.id_serie = d.id_serie
INNER JOIN usuario us
ON vsd.id_usuario = us.id_usuario
INNER JOIN unidade un
ON un.id_unidade = vsd.id_unidade
where
d.id_documento = '1111111' --Digite aqui o id_documento
ORDER BY
vsd.dth_atualizacao ,vsd.versao
Assinaturas realizadas por determinado usuário
SELECT
-- COUNT (ass.id_documento)
ass.id_documento AS "Id Doc" ,
prot.protocolo_formatado AS "Protocolo" ,
se.nome AS "Documento",
doc.numero AS "N°" ,
us.sigla as "CPF",
us.nome AS "Usuario" ,
un.sigla AS "Unidade" ,
ass.tratamento AS "Tratamento",
CASE ass.sta_forma_autenticacao
WHEN 'C' THEN 'Assinuatura Certificado digital'
WHEN 'S' THEN 'Assinatura Senha'
WHEN 'A' THEN 'Autenticação certificado digital'
WHEN 'H' THEN 'Autenticação senha'
WHEN 'V' THEN 'Instruções validação'
END AS "TipoAssinatura",
atv.dth_abertura AS "Data"
FROM
assinatura ass
FULL JOIN atividade atv ON
atv.id_atividade = ass.id_atividade
INNER JOIN usuario us ON
us.id_usuario = ass.id_usuario
INNER JOIN unidade un ON
un.id_unidade = ass.id_unidade
INNER JOIN documento doc ON
doc.id_documento = ass.id_documento
INNER JOIN serie se ON
se.id_serie = doc.id_serie
INNER JOIN protocolo prot ON
prot.id_protocolo = doc.id_documento
--WHERE
-- ass.sta_forma_autenticacao = 'C'
-- AND prot.sta_nivel_acesso_local = 0
-- ass.id_usuario = '100002429'
-- AND se.id_serie IN ('191','92')
-- AND atv.dth_abertura between '13:30:00.000' AND '07:29:59.000'
ORDER BY atv.dth_abertura ASC
-- select count(id_documento) from assinatura
-- where assinatura.sta_forma_autenticacao = 'C' --399
-- where id_usuario = '100002429'