Como criar uma Lista de Controle de Acesso (ACL) personalizada no Magento 2

Contextualizando

O que é uma lista de controle de acesso?

O Access Control List (Controle de Lista de Acessos) ou ACL são regras que permitem um administrador limitar as permissões de um usuário para autenticação, permitindo o don…


This content originally appeared on DEV Community and was authored by Lucas Teixeira dos Santos Santana

Contextualizando

O que é uma lista de controle de acesso?

O Access Control List (Controle de Lista de Acessos) ou ACL são regras que permitem um administrador limitar as permissões de um usuário para autenticação, permitindo o dono da loja refinar as funções para cada papel de usuário.

Papeis de usuário

As listas de recursos do ACL estão na área do administrador do Magento e são visíveis assim que acessar o caminho System -> Permissions -> User Roles. Neste recurso é possível visualizar uma lista em forma de árvore de todos os recursos disponíveis, onde os recursos filhos ficam dentro dos recursos pais.
É possível criar papeis de usuários e selecionar os recursos que cada papel poderá ter acesso, cada usuário ficará limitado aos recursos selecionados do seu papel.

Código para criar o ACL

acl.xml

Para a criação de novos papéis de usuário no Magento é necessário criar um arquivo chamado acl.xml que deve seguir a estrutura de pasta \{Vendor}\{Module}\etc\acl.xml. Todo recurso deve iniciar tendo o recurso Magento_Backend::admin como raiz, caso não seja filho de outro recurso.

Atributo Descrição
id Define o identificador único que é utilizado na guia.
title Texto que será exibido na barra de menu.
sortOrder Define a ordem de classificação dos recursos. A ordem é determinada por números crescente, então números menores aparecerão primeiro.
<?xml version="1.0"?>
<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:Acl/etc/acl.xsd">
    <acl>
        <resources>
            <resource id="Magento_Backend::admin">
                <resource id="{Vendor}_{Module}::{parentResourceId}" title="{Parent Title}" sortOrder="{integer}">
                    <resource id="{Vendor}_{Module}::{featureResourceId}" title="{Feature Title}" sortOrder="{integer}">
                        <resource id="{Vendor}_{Module}::{firstChildResourceId}" title="{First Child Title}" sortOrder="{integer}" />
                        <resource id="{Vendor}_{Module}::{secondChildResourceId}" title="{Second Child Title}" sortOrder="{integer}">
                            <resource id="{Vendor}_{Module}::{firstGrandchildResourceId}" title="{First Grandchild Title}" sortOrder="{integer}" />
                        </resource>
                    </resource>
                </resource>
            </resource>
        </resources>
    </acl>
</config>

Finalizando

Valores entre chaves ({test}) devem ser alterados na implementação do código.

Habilitando as alterações

Execute o comando PHP para limpar todos os caches de armazenamento em cache do processos.

php bin/magento cache:clean
php bin/magento flush

Diretórios e Arquivos

Segue a a lista de diretórios e arquivos que devem ser criados.

- app/
  - code/
    - {Vendor}/
        - {Module}/
          - etc/
            - acl.xml
            - module.xml
          - registration.php
          - composer.json


This content originally appeared on DEV Community and was authored by Lucas Teixeira dos Santos Santana


Print Share Comment Cite Upload Translate Updates
APA

Lucas Teixeira dos Santos Santana | Sciencx (2021-11-22T13:35:50+00:00) Como criar uma Lista de Controle de Acesso (ACL) personalizada no Magento 2. Retrieved from https://www.scien.cx/2021/11/22/como-criar-uma-lista-de-controle-de-acesso-acl-personalizada-no-magento-2/

MLA
" » Como criar uma Lista de Controle de Acesso (ACL) personalizada no Magento 2." Lucas Teixeira dos Santos Santana | Sciencx - Monday November 22, 2021, https://www.scien.cx/2021/11/22/como-criar-uma-lista-de-controle-de-acesso-acl-personalizada-no-magento-2/
HARVARD
Lucas Teixeira dos Santos Santana | Sciencx Monday November 22, 2021 » Como criar uma Lista de Controle de Acesso (ACL) personalizada no Magento 2., viewed ,<https://www.scien.cx/2021/11/22/como-criar-uma-lista-de-controle-de-acesso-acl-personalizada-no-magento-2/>
VANCOUVER
Lucas Teixeira dos Santos Santana | Sciencx - » Como criar uma Lista de Controle de Acesso (ACL) personalizada no Magento 2. [Internet]. [Accessed ]. Available from: https://www.scien.cx/2021/11/22/como-criar-uma-lista-de-controle-de-acesso-acl-personalizada-no-magento-2/
CHICAGO
" » Como criar uma Lista de Controle de Acesso (ACL) personalizada no Magento 2." Lucas Teixeira dos Santos Santana | Sciencx - Accessed . https://www.scien.cx/2021/11/22/como-criar-uma-lista-de-controle-de-acesso-acl-personalizada-no-magento-2/
IEEE
" » Como criar uma Lista de Controle de Acesso (ACL) personalizada no Magento 2." Lucas Teixeira dos Santos Santana | Sciencx [Online]. Available: https://www.scien.cx/2021/11/22/como-criar-uma-lista-de-controle-de-acesso-acl-personalizada-no-magento-2/. [Accessed: ]
rf:citation
» Como criar uma Lista de Controle de Acesso (ACL) personalizada no Magento 2 | Lucas Teixeira dos Santos Santana | Sciencx | https://www.scien.cx/2021/11/22/como-criar-uma-lista-de-controle-de-acesso-acl-personalizada-no-magento-2/ |

Please log in to upload a file.




There are no updates yet.
Click the Upload button above to add an update.

You must be logged in to translate posts. Please log in or register.