Definindo controle de acesso no Wordpress

Sign in to queue

Description

Controle de Acesso

Como uma aplicação de CMS o WordPress oferece suporte de controle de acesso. O WordPress utiliza os conceitos de Funções(Role) e Capacidade(Capability) para definir o que os usuários da aplicação podem e não podem fazer.

Existe conteúdo bem detalhado sobre como o WordPress trabalha com estes conceitos aqui. Nesta sessão vamos mostrar como atribuir as permissões necessárias para um novo autor.

Criando um novo usuário

No painel de administração do WordPress clique no item "Add New" dentro do sub-menu de "Users" no menu esquerdo.

Generic Episode Image

Neste momento precisamos informar as seguintes informações do novo usuário: username, e-mail, senha e confirmação de senha. As outras informações não são obrigatórias, mas você pode também informar: primeiro nome, último nome, website.

Generic Episode Image

Repare que a senha tem um indicador de segurança que informa o quão forte é a senha digitada. Senha com no mínimo 7 caracteres e com caracteres em caixa alta, caixa baixa, números e caracteres especiais são consideradas senha fortes. Como por exemplo a senha "a4!T3#9W6".

Generic Episode Image

Se você tiver configurado o servidor SMTP neste momento é possível marcar o check box para o WordPress enviar esta senha para este novo usuário.

A última informação é qual será a função do usuário na aplicação, de acordo com a função uma série de permissões será aplicada. A lista do que cada função pode fazer está listada aqui. Neste caso queremos criar um usuário com a função autor.

Generic Episode Image

Clique no botão "Add New User" e você será redirecionado para a tela de listagem de usuários com uma mensagem de sucesso e o novo usuário sendo listado.

Generic Episode Image

A partir de agora o usuário "paulo.moraes" já consegue acessar no WordPress com permissão para escrever posts, publicar posts, editar posts, apagar posts, fazer upload de arquivos, apagar posts publicados e ler posts.

Alterando as capacidades de uma função

Vamos supor que você não quer mais que todos os usuários com a função de autor consiga apagar posts publicados. O WordPress não oferece edição de função, mas tem um plug-in que consegue oferece esta funcionalidade.

Para instalar o plug-in, no painel de administração do WordPress, clique no item "Add New" dentro do sub-menu de "Plugins".

Generic Episode Image

No campo de busca digite "User Role Editor" e clique em "Search Plugins".

Na tela com o resultado da busca localize o plug-in "User Role Editor" e clique em "Install Now".

Generic Episode Image

Confirme a instalação do plug-in e aguarde até concluir a instalação.

Ao concluir a instalação clique em "Activate Plugin".

Agora você pode reparar que existe mais um plug-in ativo na listagem de plug-ins.

Generic Episode Image

Agora você pode reparar que existe mais um plug-in ativo na listagem de plug-ins.

Para realizar a implantação deste plug-in é necessário realizar um push para o repositório central do Azure. No terminal é necessário realizar os seguintes comandos em ordem.

sudo git add .
sudo git commit -m "mensagem de commit"
sudo git push origin master

Generic Episode Image

Agora podemos alterar as capacidades da função autor. A partir do painel de administração do WordPress clique no novo item "User Edit Role" dentro do sub-menu de "Users".

Na primeira caixa de seleção, selecione a função que deseja alterar, no caso a função é autor.

Generic Episode Image

As capacidades que a função autor está autorizada a fazer serão automaticamente selecionadas. Então remova a marcação da opção "delete_published_posts"

Clique no botão "Update" e você receberá uma mensagem de confirmação.

A partir de agora os usuários com a função de "autor" não podem mais remover posts que já foram publicados.

O plug-in "User Role Editor" também é capaz de criar novas funções e associar capacidades a estas novas funções, tornando o controle de acesso muito flexível para se adaptar a sua necessidade.

Você pode conhecer mais sobre o plug-in aqui.

The Discussion

Add Your 2 Cents