Commit a88ed21a8d834b247397135831fe9d9555a8301d

Authored by andre.guimaraes
1 parent 55209c6e

Adiciona mais informações no README.md

- Informações sobre as roles do broker.
- Explica utilização do templates-broker.
Showing 1 changed file with 21 additions and 3 deletions   Show diff stats
@@ -18,7 +18,7 @@ Alguns serviços adicionais foram desenvolvidos para extrair dados que não são @@ -18,7 +18,7 @@ Alguns serviços adicionais foram desenvolvidos para extrair dados que não são
18 ## Procedimentos para instalação 18 ## Procedimentos para instalação
19 ### Configurar as propriedades dos datasources no JBoss. 19 ### Configurar as propriedades dos datasources no JBoss.
20 20
21 -O broker possui dois datasources e ambos estão declarados no arquivo `sei-broker-ds.xml`, eles são identificados como `jdbc/sei-broker` e `jdbc/sei-mysql`. O `jdbc/sei-broker` foi definido para acessar as tabelas que foram projetadas para o broker, o `jdbc/sei-mysql` se conecta ao banco de dados do SEI. O funcionamento dos datasources depende da declaração de algumas **Systrem Properties** no JBoss. 21 +O broker possui dois datasources e ambos estão declarados no arquivo `sei-broker-ds.xml`, eles são identificados como `jdbc/sei-broker` e `jdbc/sei-mysql`. O `jdbc/sei-broker` foi definido para acessar as tabelas que foram projetadas para o broker, o `jdbc/sei-mysql` se conecta ao banco de dados do SEI. O funcionamento dos datasources depende da declaração de algumas **System Properties** no JBoss.
22 22
23 | Chave | Valor | 23 | Chave | Valor |
24 | --------------------------------------------- | --------------------------------------------- | 24 | --------------------------------------------- | --------------------------------------------- |
@@ -75,7 +75,7 @@ O SEI-Broker faz uso de dois arquivos de propriedades que ficam na pasta `<JBOSS @@ -75,7 +75,7 @@ O SEI-Broker faz uso de dois arquivos de propriedades que ficam na pasta `<JBOSS
75 </tr> 75 </tr>
76 </table> 76 </table>
77 77
78 -### Criar security-domain no JBoss 78 +### Criar security-domain no JBoss {: #config-security-domain}
79 79
80 É necessário que haja um security-domain registrado com o nome `ans-ws-auth`, o mesmo pode utilizar um banco de dados[^1] ou o LDAP. É importante destacar que o Broker trabalha com autorização baseada em papéis(RBAC[^2]) e que os usuários precisam ter seus papéis atribuídos. 80 É necessário que haja um security-domain registrado com o nome `ans-ws-auth`, o mesmo pode utilizar um banco de dados[^1] ou o LDAP. É importante destacar que o Broker trabalha com autorização baseada em papéis(RBAC[^2]) e que os usuários precisam ter seus papéis atribuídos.
81 [^1]: https://access.redhat.com/documentation/en-us/red_hat_jboss_enterprise_application_platform/7.0/html/how_to_configure_identity_management/configuring_a_security_domain_to_use_a_database 81 [^1]: https://access.redhat.com/documentation/en-us/red_hat_jboss_enterprise_application_platform/7.0/html/how_to_configure_identity_management/configuring_a_security_domain_to_use_a_database
@@ -97,7 +97,7 @@ Os valores utilizados pelo Broker podem ser configurados na classe `Constantes`, @@ -97,7 +97,7 @@ Os valores utilizados pelo Broker podem ser configurados na classe `Constantes`,
97 97
98 ### Gerar documentação da API 98 ### Gerar documentação da API
99 99
100 -Após a implantação é fundamental que a documentação da API seja disponibilizada para os clientes do Broker. A documentação do Broker foi escrita utilizando a ferramenta [apiDoc](http://apidocjs.com/) e os fontes estão no diretório `/src/main/resources/apidoc/`. Será preciso fazer a instalação do apiDoc[^3] e executar o comando abaixo na raiz do projeto. 100 +Após a implantação é **fundamental** que a documentação da API seja disponibilizada para os clientes do Broker. A documentação do Broker foi escrita utilizando a ferramenta [apiDoc](http://apidocjs.com/) e os fontes estão no diretório `/src/main/resources/apidoc/`. Será preciso fazer a instalação do apiDoc[^3] e executar o comando abaixo na raiz do projeto.
101 [^3]: http://apidocjs.com/#install 101 [^3]: http://apidocjs.com/#install
102 102
103 ```console 103 ```console
@@ -106,6 +106,24 @@ apidoc -f &quot;.*\\.apidoc$&quot; -i src/main/resources/apidoc/ -o &lt;CAMINHO_ONDE_DOCUMENT @@ -106,6 +106,24 @@ apidoc -f &quot;.*\\.apidoc$&quot; -i src/main/resources/apidoc/ -o &lt;CAMINHO_ONDE_DOCUMENT
106 106
107 A documentação gerada deve ser disponibilizada em um local onde possa ser facilmente acessada pelos clientes. 107 A documentação gerada deve ser disponibilizada em um local onde possa ser facilmente acessada pelos clientes.
108 108
  109 +## Autenticação e Autorização
  110 +A autenticação no SEI-Broker é feita através do HTTP Basic e a autorização é baseada em roles/papéis que são atribuídas ao usuário. Os sistemas que utilizarão o broker precisarão de um usuário, esse usuário deve ser previamente cadastrados em uma fonte de dados e receber a role correspondente às suas necessidades. Esses dados serão verificados pelo security-domain `ans-ws-auth` que foi configurado no JBoss.
  111 +
  112 +### Roles/Papéis ###
  113 +Existem duas roles de acesso ao Broker, uma com acesso a todas funcionalidades e outra somente para consulta. As roles precisam ter o nome idêntico ao definido no Broker, caso haja divergência o acesso será negado pelo [JAAS](https://en.wikipedia.org/wiki/Java_Authentication_and_Authorization_Service).
  114 +
  115 +| Role | Descrição |
  116 +| ------------------------- | ------------------------------------------------------------- |
  117 +| RO_SEI_BROKER | Perfil com acesso a todas as funcionalidades do SEI-Broker |
  118 +| RO_SEI_BROKER_CONSULTA | Perfil com acesso a todas as consultas. |
  119 +
  120 +## Templates documentos internos
  121 +Através do Broker é possível preencher templates em HTML e incluí-los como documentos internos no SEI. O Objetivo é facilitar o desenvolvimento, aumentar a manutenibilidade e tornar os documentos mais ricos e dinâmicos.
  122 +
  123 +Os templates usados no Broker são criados utilizando a ferramenta [Mustache](http://mustache.github.io/) e devem ser cadastrados no [Gerenciador de Templates](https://softwarepublico.gov.br/gitlab/ans/templates-web), durante a inclusão do documento o [templates-broker](https://softwarepublico.gov.br/gitlab/ans/templates-broker) será consultado. O código em HTML gerado pelo SEI-Broker será inserido dentro do campo **conteúdo** do modelo de documento feito no SEI. Os detalhes da utilização estão na documentação da API.
  124 +
  125 +É preciso deixar claro que os templates do broker não substituem o modelo de documento do SEI.
  126 +
109 ## Monitoramento do SEI-Broker 127 ## Monitoramento do SEI-Broker
110 128
111 O SEI-Broker oferece três serviços de monitoramento, esses serviços verificam as principais conexões do broker. 129 O SEI-Broker oferece três serviços de monitoramento, esses serviços verificam as principais conexões do broker.