DES:SGPS
(Diferença entre revisões)
(→Transformar arquivos de certificado com extensão .cer em arquivos .pfx) |
(→Transformar arquivos de certificado com extensão .cer em arquivos .pfx) |
||
Linha 110: | Linha 110: | ||
<pre> | <pre> | ||
openssl.exe x509 -in "caminho\do\certificado\certificatename.cer" -outform PEM -out "caminho\do\certificado\certificatename.pem" | openssl.exe x509 -in "caminho\do\certificado\certificatename.cer" -outform PEM -out "caminho\do\certificado\certificatename.pem" | ||
− | + | </pre> | |
+ | * Em alguns casos, o comando adicional é necessário: | ||
+ | <pre> | ||
openssl.exe x509 -in "caminho\do\certificado\certificatename.cer" -out "caminho\do\certificado\certificatename.pem" | openssl.exe x509 -in "caminho\do\certificado\certificatename.cer" -out "caminho\do\certificado\certificatename.pem" | ||
</pre> | </pre> | ||
Linha 117: | Linha 119: | ||
* Para criar o arquivo .pfx, deve-se executar o comando: | * Para criar o arquivo .pfx, deve-se executar o comando: | ||
<pre> | <pre> | ||
− | openssl pkcs12 -export -out certificate.pfx -inkey privateKey.key -in certificate.cer | + | openssl pkcs12 -export -out certificate.pfx -inkey privateKey.key -in certificate.cer |
− | + | ||
</pre> | </pre> | ||
+ | * A senha utilizada para criar o .pfx deve ser anotada para ser utilizada posteriormente | ||
* O arquivo resultante .pfx pode ser cadastrado na tabela CrtDigital, para ser utilizado na conexão mTLS. A senha utilizada deve ser informada nesse cadastro. | * O arquivo resultante .pfx pode ser cadastrado na tabela CrtDigital, para ser utilizado na conexão mTLS. A senha utilizada deve ser informada nesse cadastro. |
Edição de 15h23min de 18 de junho de 2024
Voltar a Página Inicial - Menu Sistemas
Tabela de conteúdo |
Processos Seletivos
Controle de Acesso
Cadastro de Grupos
- O cadastro de Grupo é usado para definir grupos de pessoas, por meio de SQLs que são gravadas na tabela PrcSltGrupo
- exemplos: pode ser cadastrada SQL para selecionar servidores da DCV, outra SQL para servidores das DAs, etc
- Estes Grupos são utilizados em 2 módulos do SGPS: módulo de Inscrições e módulo de gestão para fins de Controle de Acesso aos processos seletivos
- dados na PrcSltGrupo
- quando o Processo Seletivo for registrado, significa que o Grupo é usado para no módulo de Inscrições para restringir quem pode efetuar inscrições
- quando o Processo Seletivo não for registrado, significa que o Grupo é usado no módulo de Gestão para restringir quem pode acessar e gerir os processos e inscritos
- Acesso ao cadastro:
- módulo de Inscrições: no item Principal do menu, acesse o processo seletivo desejado e clique em Grupo dentro da aba Outros Detalhes do Processo
- módulo de Controle de Acesso: clique em Grupos no menu
Cadastro de Controle de Acesso
- O cadastro de Controle de Acesso é utilizado no módulo de Gestão dos processos seletivos e, juntamente com o Grupo, objetiva restringir quem pode acessar e gerir os processos e inscritos
- Na tabela PrcSltCntAcesso é vinculado o processo seletivo a que se refere o controle de Acesso, a SQL que será utilizada (proveniente da tabela PrcSltGrupo) e o tipo de acesso que esse grupo de pessoas tem (TblGrlItm_PrcSltTpAcesso)
- Para acessar, clique em Principal no menu, pesquise e selecione o processo seletivo desejado; na aba Outros Detalhes do Processo, abra a aba Controle de Acesso
Inserção e Remoção de Acessos de Pessoas
- A partir dos dados registrados no Grupo e no Controle de Acesso, um job roda a cada 10 minutos no servidor SQL Server e executa a stored procedure spAtualizaPrcSltCntAcsPssFisica que atualiza a tabela PrcSltCntAcsPssFisica, seja para conceder e/ou remover acesso de pessoas aos processos seletivos
- A tabela PrcSltCntAcsPssFisica contém a lista de pessoas que estão vinculadas a um PrcSltCntAcesso específico
- Além do job, a SP spAtualizaPrcSltCntAcsPssFisica também é executada pelo SGPS, nas operações de inserção/edição/exclusão realizadas na tabela PrcSltCntAcesso.
- As SQLs dos padrões de acesso consultam essa tabela para liberar o acesso às pessoas que fazem parte de um grupo. Por exemplo, o padrão SGPS-AnlDoc tem uma consulta que retorna todas as pessoas físicas que tenham o papel "Análise Documental":
select PssFsc_Codigo from PrcSltCntAcsPssFisica T1 inner join PrcSltCntAcesso T2 on T1.PrcSltCntAcs_Codigo = T2.PrcsltCntAcs_Codigo where TblGrl_PrcSltTpAcesso = 'PrcSltTpAcesso' and TblGrlItm_PrcSltTpAcesso = '1'
- Todas as pessoas retornadas por essa consulta recebem o padrão SGPS-AnlDoc.
- No sistema SGPS, deve-se aplicar um filtro (sqlRestriction) para verificar quais processos seletivos a pessoa logada tem acesso, retornando somente estes processos para o usuário (método "Pesquisa" do PrcSeletivoController).
and exists ( select 1 from PrcSltCntAcsPssFisica T1 inner join PrcSltCntAcesso T2 on T1.PrcSltCntAcs_Codigo = T2.PrcsltCntAcs_Codigo where T2.PrcSlt_Codigo = this_.PrcSlt_Codigo and T1.PssFsc_Codigo = user.getPssFscCodigo() )
- Neste método, deve-se ainda verificar se existe valor único cadastrado para a transação PrcSeletivo e para o padrão utilizado pelo usuário logado (atributo FltAcesso do padrão PrcSeletivo no CCM).
- Caso esteja como "T", indica que deve listar TODOS os processos seletivos, sem aplicar filtro. Por exemplo, para os padrões SGPS-Max e SGPS-Inscricao deve-se listar todos os processos.
Cronograma de implementação
Atividade | Início | Término |
---|---|---|
Especificação | 20/09/2023 | 20/10/2023 |
Definição das tabelas no DER | 20/10/2023 | 20/10/2023 |
Implementação do job dos dados em PrcSltCntAcsPssFisica | 28/03/2024 | 29/03/2024 |
Implementação do filtro no método "pesquisa" em PrcSeletivoController | 01/04/2024 | 02/04/2024 |
Alteração da tela de cadastro de PrcSltGrupo, para chamar do menu principal, sem obrigar código de processo seletivo | 27/03/2024 | 27/03/2024 |
Alteração da tela de cadastro de PrcSltCntAcesso, para alimentar o campo PrcSltGrp_Codigo | 28/03/2024 | 28/03/2024 |
Alteração dos padrões de acesso do SGPS, para que utilizem os dados da tabela PrcSltCntAcsPssFisica | 01/04/2024 | 02/04/2024 |
Passos para inicializar o projeto em um ambiente novo:
- instalar o Node versão 14.x.x (Instalador da versão node-v14.21.3-x64 está em OneDrive do ddes: D:\UNIOESTE\NTI - Documents\DDes\Desenvolvimento\Arquivos DDes\Desenvolvimento JAVA+EXTJS)
- ir na pasta frontend do sgps e dar o comando: npm install
- para rodar, dar o comando ng serve
- não esquecer de inserir os atributos NoLogin no SGPS.properties:
noLogin=true noLogin_Padrao=SGPS-Inscricao pssFscCodigo_Default=seu_codigo_pss_fisica
Instalar Angular CLI quando clonar projeto com Angular 6+ (se necessário)
- Ir na pasta aonde estão os arquivos do Angular (p. ex., /frontend)
- digitar o comando: npm i @angular/cli@7.3.10 (antes disso, deve ter instalado o Node na versão 14.21.3)
Transformar arquivos de certificado com extensão .cer em arquivos .pfx
- O arquivo de certificado .cer deve possuir tanto a chave pública quando a privada (não é normal, mas pode ocorrer, como no caso da Fundecamp)
- Para obter a chave privada, basta abrir o arquivo .cer, localizar a linha que inicia com -----BEGIN RSA PRIVATE KEY----- e copiar todo o conteúdo, iniciando nesse linha (inclusive ela) até a linha que contém -----END RSA PRIVATE KEY----- (incluindo a própria linha). Esse conteúdo deve ser colado em outro arquivo com a extensão .key (p. ex. fundecamp_priv.key)
- Para obter a chave pública, deve ser feito o seguinte procedimento:
- Instalar o openssl: https://gnuwin32.sourceforge.net/packages/openssl.htm
- Executar os seguintes comandos:
openssl.exe x509 -in "caminho\do\certificado\certificatename.cer" -outform PEM -out "caminho\do\certificado\certificatename.pem"
- Em alguns casos, o comando adicional é necessário:
openssl.exe x509 -in "caminho\do\certificado\certificatename.cer" -out "caminho\do\certificado\certificatename.pem"
- O arquivo .pem resultante contém a chave pública do certificado.
- Tendo os dois arquivos, chave privada e pública (arquivos .key e .pem), deve-se juntá-los em um único arquivo com extensão .pfx, que conterá as duas chaves
- Para criar o arquivo .pfx, deve-se executar o comando:
openssl pkcs12 -export -out certificate.pfx -inkey privateKey.key -in certificate.cer
- A senha utilizada para criar o .pfx deve ser anotada para ser utilizada posteriormente
- O arquivo resultante .pfx pode ser cadastrado na tabela CrtDigital, para ser utilizado na conexão mTLS. A senha utilizada deve ser informada nesse cadastro.