From 97caaa734a33b4c499568dd87357562f1e17b048 Mon Sep 17 00:00:00 2001 From: Thulio Bittencourt Date: Wed, 7 Apr 2021 22:13:04 -0300 Subject: [PATCH] Update README.md --- README.md | 89 ++++++++++++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 88 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index 554ba50..54f4657 100644 --- a/README.md +++ b/README.md @@ -18,5 +18,92 @@ Framework para Controle de Regras de Acesso de Usuários inspirado no conceito RBAC. ## Instalação +Basta registrar no Library Path do seu Delphi o caminho da pasta SRC da Biblioteca ou utilizar o Boss (https://github.com/HashLoad/boss) para facilitar ainda mais, executando o comando + +``` +boss install https://github.com/bittencourtthulio/safety4d +``` + +## Primeiros Passos - Tutorial + +Para utilizar o Safety4D você deve adicionar a uses + +``` +Safety4D +``` + +### Como funciona + +O Safety4D foi baseado no conceito de RBAC ( role-based access control) https://pt.wikipedia.org/wiki/Controle_de_acesso_baseado_em_fun%C3%A7%C3%B5es + +Ele se baseia em uma estrutura JSON de configuração para definição das permissões. + +Abaixo o exemplo de um arquivo de configuração + +```JSON +{ + "resources": { + "safety4d": { + "users": { + "actions": { + "read": { + "description": "read-only", + "errormsg": "not permit" + }, + "write": { + "description": "read-write", + "errormsg": "not write data" + }, + "delete": { + "description": "delete-data", + "errormsg": "not delete data" + }, + "view": { + "description": "view data", + "errormsg": "not view data" + } + } + } + } + }, + "groupPermission": { + "{4D62E4C3-C73D-488A-8518-03A9545B5611}": { + "key": "Gerente", + "description": "Permissoes completa de gestao do Sistema", + "Actions": [ + "users.write" + ], + "NotActions": [ + "*" + ] + }, + "{C188D1AB-EC28-4380-96E0-D1B13A29A8B3}": { + "key": "Comercial", + "description": "Permissoes de Recursos Comerciais", + "Actions": [ + "*" + ], + "NotActions": [ + "users.delete", + "users.write" + ] + } + }, + "userKeys": { + "{34C940ED-50E7-4CE3-B701-03CF1E15F28B}": { + "description": "Fulano de Tal", + "permissionGroups": [ + "{4D62E4C3-C73D-488A-8518-03A9545B5611}" + ] + }, + "{96B4C46F-0EBB-443B-B309-09C81844406E}": { + "description": "Beltrano", + "permissionGroups": [ + "{C188D1AB-EC28-4380-96E0-D1B13A29A8B3}" + ] + } + } +} +``` + -Basta registrar no Library Path do seu Delphi o caminho da pasta SRC da Biblioteca \ No newline at end of file