rbac_rls 0.1.3 → 0.1.4

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: fb13cff5b26d29280bca5e6d39cb03d0b678b6d8a94864bba35ec1999bf432cb
4
- data.tar.gz: c4dcdbec3c7a18d50a818ba041bf0ebe48e06133548353328ef6fadc91b57daf
3
+ metadata.gz: 27a062559ce3ed39a8354ebde354c8d7977d14e9b1d9863e982987019bf7be4d
4
+ data.tar.gz: 3e7a744ca0cac8908a708685a3c198b0ec8d1608100445ad9712f30c15a5c228
5
5
  SHA512:
6
- metadata.gz: cc5662a8ca0d5f748d341d6861c7899beb512b6e306220684160b81a3e051dda3e71a4d980654406a2cc09a6d28723ad5c001c1c40bee028e5e93b334787f1cb
7
- data.tar.gz: 6f1dd91ca3746596e1451566a703a132f15fff163af006d6b5082ed1c37382e93b661f4b72c1e5f1a51912e7e40b0d88587d448f327f99ce7e0af34192044c05
6
+ metadata.gz: 27559ee87603c01c7aed6426dfaefb81ee7ffdc3c36aa59116da0195c8e6555b7cce360173e5be35331ebbedbbb8d338758d53ccefda29f6a6b82ce1646887f2
7
+ data.tar.gz: 6a2fd3df7b7ed6447acc1c8c99925f51bf71a3ad1bbca8d06196ae075c3cfd0de797104f428a1b860da5cbe723b5bf27ca0fa59f72bbc0ee86051d3782b3a8db
data/README.md CHANGED
@@ -1,66 +1,121 @@
1
1
  # RbacRls
2
- Short description and motivation.
3
2
 
4
- ## Usage
5
- How to use my plugin.
3
+ Esta biblioteca tem por finalidade prover a funcionalidade de controle de acesso granular aos
4
+ dados, contribuindo para a segurança através de verificações de acesso a informação. Este
5
+ modelo tem como base os conceitos do recurso de controle de acesso RBAC(Role-Based
6
+ Access Control ) aplicados juntamente aos métodos de RLS(Row-Level Security).
6
7
 
7
- ## Installation
8
- Add this line to your application's Gemfile:
8
+ O framework proposto tem por objetivo facilitar a implantação da funcionalidade
9
+ de segurança, auxiliando o programador na implementação das políticas de restrições no
10
+ banco de dados.
11
+
12
+ ## RLS:
13
+
14
+ A segurança em nível de linha permite que você use um contexto de execução para controlar o acesso a
15
+ linhas em uma tabela de banco de dados, simplificando o design e a codificação de
16
+ segurança da sua aplicação.
17
+
18
+ ## RBAC:
19
+
20
+ O controle de acesso baseado em função (RBAC) é um modelo de restrição de que tem como base as funções de usuários
21
+ individuais em um contexto hierárquico. O RBAC garante que os usuários acessem apenas as informações de que precisam
22
+ para realizar suas rotina e os impede de acessar informações que não pertencem a eles.
23
+
24
+ # Como utilizar esta Gem ?.
25
+
26
+ ### Instalação:
27
+
28
+ Adicione esta linha no arquivo da sua aplicação Gemfile
9
29
 
10
30
  ```ruby
11
31
  gem "rbac_rls"
12
32
  ```
13
33
 
14
- And then execute:
34
+ E então execute o seguinte comando:
35
+
15
36
  ```bash
16
37
  $ bundle
17
38
  ```
18
39
 
19
- Or install it yourself as:
40
+ Ou Instale você mesmo manualmente com o comando abaixo :
41
+
20
42
  ```bash
21
43
  $ gem install rbac_rls
22
44
  ```
23
- And then add in your manifest.js:
24
- ```bash
45
+
46
+ Adicione no seu arquivo manifest.js:
47
+
48
+ ```javascript
25
49
  //= link rbac_rls/application.css
26
50
  //= link rbac_rls/application.js
27
51
  ```
28
- And then add in your application_record.rb and application_controller.rb:
29
- ```bash
30
- include ConnectionRls
31
- include ConnectionRlsUser
52
+
53
+ ##### Adicione no seu arquivo application_record.rb:
54
+
55
+ ```ruby
56
+ #Em application_record.rb
57
+ include ConnectionRlsConcern
32
58
  ```
59
+
60
+ ##### Adicione no seu arquivo application_controller.rb:
61
+
62
+ ```ruby
63
+ #Em application_controller.rb"
64
+ include ConnectionRlsUserConcern
65
+ ```
66
+
33
67
  ```bash
34
- crie um novo everioniment para rodar as migrations
35
- por exemplo: duplique um arquivo de app/config/environments configure o deu database.yml com o env
68
+ Para fazer o uso desta biblioteca é necessário que a aplicação principal, acesse o banco de dados apartir de um
69
+ usuário que não é o dono do banco de dados pois, as regras de Segurança em nivél de linha não podem ser aplicadas a
70
+ este tipo de usuário do banco de dados.
71
+ Então: apenas para casos onde seja necessario rodar migrates como administrador utilize um novo Environment ou um método
72
+ diferente de conexão com o banco que não seja como da aplicação principal
73
+ Por exemplo:
74
+ a aplicação por padrão utilizará um usuário "app_user" para suas consultas.
75
+ para rodar as migrates da aplicação o usuário padrão será "data_base_admin"
76
+ logo no environment "development" o usuário do banco de dados será :app_user
77
+ e no environment "migrations" o usuário do banco de dados será :data_base_admin
36
78
 
37
- exemplo:
38
- -----------
39
- migrations:
40
- <<: *default
41
- database: main_app_development
42
- username: username
43
- password: password
44
- -----------
79
+ Passos para criar um environment :
80
+ 1º duplique um arquivo de app/config/environments
81
+ 2º configure o deu database.yml como no exemplo abaixo:
82
+ exemplo:
83
+ -----------
84
+ migrations:
85
+ <<: *default
86
+ database: main_app_development
87
+ username: username
88
+ password: password
89
+ -----------
90
+ 3º para rodar as migrates usando este environment use um comando análogo a "rake db:migrate RAILS_ENV=migrations"
91
+
45
92
  ```
46
93
 
47
- And then run this command:
94
+ Logo após estes passos, na linha de comando execute:
95
+
48
96
  ```bash
49
97
  rake rbac_rls:install:migrations
50
98
  ```
51
99
 
52
- And then run this command:
53
- ```bash
54
- rake db:migrate
100
+ ##### Adicione na sua aplicação em config/routes.rb
101
+
102
+ ```ruby
103
+ # Em config/routes.rb adicione
104
+ mount RbacRls::Engine => :rbac_rls
55
105
  ```
56
- And then run this command:
106
+
107
+ Execute na linha de comando:
108
+
57
109
  ```bash
58
- yarn install
110
+ rake db:migrate
111
+
112
+ yarn install
59
113
  ```
60
114
 
115
+ ### após isso a bibilioteca está instalada, e pode ser acessada em /rbac_rls
61
116
 
62
- ## Contributing
63
- Contribution directions go here.
117
+ [//]: # (## Contributing)
64
118
 
65
119
  ## License
120
+
66
121
  The gem is available as open source under the terms of the [MIT License](https://opensource.org/licenses/MIT).
@@ -11,7 +11,7 @@ module ManageRlsMigrationConcern
11
11
  end
12
12
 
13
13
  def down_migrate(file_version = migration_version)
14
- return true if system(Settings.down_migrate_command(file_version))
14
+ return true if system(RbacRls::Settings.down_migrate_command(file_version))
15
15
  false
16
16
  end
17
17
 
@@ -1,3 +1,3 @@
1
1
  module RbacRls
2
- VERSION = "0.1.3"
2
+ VERSION = "0.1.4"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rbac_rls
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.3
4
+ version: 0.1.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - FilipeBeserraMaia
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2022-10-13 00:00:00.000000000 Z
11
+ date: 2022-10-14 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rails