Ir para o conteúdo principal

Garantir a integridade do documento assinado

OBJETIVO

Analisar a melhor abordagem para garantir a integridade do documento assinado no projeto Portal do Cidadão conforme a User Story: “Eu como vingadores, preciso realizar um estudo de caso sobre garantir a integridade do documento assinado" presente na Sprint número 100 do time Vingadores.

JUSTIFICATIVA

Tendo em vista que o Portal do Cidadão precisa integrar a assinatura avançada do assine aqui, o qual irar levar o usuário para outra tela, fora do aplicativo. Destarte, foi pensado na criação desse estudo para garantir a melhor abordagem para essa integração garantindo a integridade dos sistemas. 

RESULTADOS ESPERADOS

Levantar casos de uso adequados para a realização da integração, mantendo a integridade e melhor experiencia para o usuário poder assinar suas solicitações.


ENVOLVIDOS:

Gustavo Felix Gomes (Dev team)

Rafael Passos dos Santos (Dev team)

Emanuel Rufino Alcantara de Lima (Dev team)

Lucas de Souza e Sousa (Dev team)

André Honório de Andrade Silva (Dev team)

Alef Carvalho (Dev team)

Euriane Nogueira Frota (Product Owner)

 

1 - INTRODUÇÃO

Como o portal do cidadão precisará implementar a assinatura digital do Gov.br, foi desenvolvido a assinatura avançada do assine aqui, o qual torna possível os sistemas da SETIC assinarem com o Sauron ou Gov.br, a assinatura será realiazadarealizada no Portal do Cidadão quando o mesmo solicitar um serviço.

2 - FUNCIONAMENTO

Com o novo assine aqui será possível assinar com o Gov.br,  para assinar será necessário selecionar a opção "entrar com o Gov.br", ele pedirá seu usuário e senha do Gov.br e em seguida mostrará as informações do documento e do assinante.

Após carregar a tela, ele pedirá seu CPF para gerar um código de confirmação com validade de 5 minutos que será enviado para seu e-mail cadastrado no Gov.br, assim que receber o código de confirmação no seu e-mail, é só inseri-lo no seu respectivo campo, também é possível reenviar o código caso seja necessário, depois de informado o código é só clicar em assinar e uma tela confirmando a assinatura irá aparecer.

Segundo as informações disponíveis para implementar assinatura será necessário:   

  • Id do documento que deseja assinar;
  • Nome do documento que deseja assinar;
  • Id do sistema cliente (ClientId) que fará a integração;
  • String do corpo do documento que deseja assinar

Com essas informações é possível criar a URL da assinatura, onde serão enviado os parâmetros

3 - BENEFÍCIOS NA UTILIZAÇIMPLEMENTAÇÃO

OQuando Apacheo Solrusuário contafor realizar a assinatura, abrirá um pop-up, que é uma nova pagina em outra aba do navegador, o time vingadores acha que tal abordagem não seja a melhor, pois tira o cidadão do App, quebrando sua experiencia de usuário com diversosa benefíciosaplicação.

Diante disso, o time vingadores encontrou duas possíveis cenários  para realização da assinatura.

O primeiro era a implementação do assine aqui com o Gov.br integrado com o Portal do cidadão, nessa opção não abrira outra aba do navegador e a assinatura seria realizada em suauma utilizaçãtela dentro do próprio portal do Cidadão, dentrecom eleso estão:layout do Portal.

    Toda

  • Recursosvia avançadostal abordagem se tornou inviável em vista que é obrigatório por decreto o uso do assine aqui, com seu layout, para o cidadão ter total entendimento que está usando o sistema.

    A outra abordagem é mais simples, usando o assine aqui, entretanto em vez de pesquisaabri a nova aba quando o Cidadão for assinar, o portal ira redirecionar pro assine aqui atras da tag html:

    <a class="btn btn-primary" href="link do assine aqui">Assinar</a>

    e o time TAMBAKISS ficando responsável pelo redirecionamento de textovoltar completopro (full-textPortal search);

  • do
  • Suportecidadão após a pesquisas de alto volume;
  • Suporte a consultas baseadas em REST API;
  • Interface de administraçrealização avançada;
  • da
  • Fácilassinatura, monitoramento
  • tal
  • Altamenteatividade escalável;
  • Tolerantefoi aconcordada falhas;
  • com
  • Cache altamente configurável;
  • Possibilidade de extensão dasPO funcionalidadesdo viatime, plug-ins;
  • entrando
na sua sprint atual.


4 - IMPLEMENTAÇÃO E HISTÓRIAS DE USUÁRIO

HISTÓRIA

PONTUAÇÃO


13


34


34


13


13

TOTAL

94


5 - POSSÍVEIS PROBLEMAS NA UTILIZAÇÃO

Existem algumas preocupações com possíveis problemas na utilização do Solr, algumas delas são:

  • Problemas de performance;
  • Custo de tempo/processamento até se tornar viável;
  • Problemas conhecidos com modificações na indexação;
  • No caso do Alpha, talvez não seja o mais apropriado, já que o mesmo não realiza tantas pesquisas;
    • O que faria bastante sentido em sistemas como o Sei ou Gov.doc;


6 - PRINCIPAIS ALTERNATIVAS

Redis - Free/OpenSource

Elasticsearch – Freemium/Proprietário

Melisearch – Free/OpenSource

Apache Spark - Free/OpenSource


7 - VALOR AGREGADO

A utilização de ferramentas como o Solr agrega muito valor aos softwares que os integram devido a sua praticidade e abordagem para resolução de grandes problemas empresariais, no entanto deve-se analisar muito bem antes de se implementar este tipo de solução aos produtos.


8 - CONCLUSÃO

A ferramenta de busca Apache Solr se mostra satisfatoriamente rápida para busca/análise de texto devido à sua estrutura de indexação. Sua documentação é abrangente e sua estrutura consistente. Grandes companhias AT&T, Amazon e Netflix a utilizam para diversas soluções de larga escala, porém - até onde foi analisado, não haveria muito ganho na utilização desta ferramenta no Alpha.


9 - REFERÊNCIAS

https://briancaos.wordpress.com/2021/02/05/c-net-core-solr-search-read-from-a-solr-index/

https://cwiki.apache.org/confluence/display/solr/solrperformanceproblems

https://docs.cloudera.com/runtime/7.2.8/release-notes/topics/rt-pubc-known-issues-solr.html

https://stacksecrets.com/dot-net-core/integrate-solr-instance-with-net-core#Some_Benefits_Of_Using_Solr

https://www.xtivia.com/blog/apache-solr-introduction-and-advantages/

https://solr.apache.org/