Download the PHP package epsjv/acl without Composer
On this page you can find all versions of the php package epsjv/acl. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Informations about the package acl
EPSJV Acl Laravel
Descrição
laravel-acl é um pacote criado para facilitar o processo de criação das regras de controle de acesso baseado em papéis de usuários, possibilitando o controle de acesso de usuários com multipos papéis.
Requisitos
Instalação
-
Execute o seguinte comando:
-
Baseado em uma instalação limpa abra o arquivo
config/app.php
navegue até a seçãoproviders
e insira no final -
Publicar:
-
Registrar as Seeds básicas de permissões no database/seeds/DatabaseSeeder.php:
-
Executar o seguinte comando para rodar a seed:
-
Abra o arquivo App\Providers\AuthServiceProvider.php da aplicação para configurar conforme abaixo:
- Incluir as Traits "HasPapeis" e "WithPapeis" no model User (User.php) conforme abaixo:
O pacote conta com uma estrutura de dados pronta e simples para trabalhar as permissões e os papéis de usuário.
Como utilizar
A forma de utilização é a mesma de qualquer outra regra pré-existente, pois para o controle de acesso, basta usar os próprios métodos fornecidos pelo laravel para isso: GATES e POLICIES.
Você pode projeger suas rotas das seguintes formas:
Proteção das Rotas:
Proteção dos Controllers:
Proteção das Views:
E se eu quiser carregar uma sessão com o papel?
A implementação desse pacote é para um cenário onde são carregados todos os papéis e permissões associados ao usuário. Porém você pode implementar sua própria lógica para carregar um papel por acesso.
Um exemplo dessa implementação pode ser feito da seguinte forma:
1) Dentro do Diretório "app" da sua aplicação, crie uma pasta chamada "Traits".
2) Dentro dessa nova pasta, crie uma Trait chamada MakeAuthorizations.php com o seguinte conteudo:
3) No AuhServiceProvider de sua aplicação, altere o import da Trait para passar a utilizar Trait criada ao invés da Trait do pacote:
-
Substituir em App\Providers\AuhServiceProvider.php:
- para:
#
Veja tudo sobre a utilização de AUTHORIZATIONS.
Para mais informações sobre o laravel, consulte a documentação oficial 6.x do Laravel.
Licença
MIT