Uma geral sobre gestão de permissões no MOODLE
Autor: Eduardo Xavier | Publicado: 2012-03-10T19:10:00-08:00


&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Estava pensando em mais um post
interessante para o Blog e acho que falar de permissões no MOODLE é uma boa
opção. Mas um post só não será suficiente, por isso estou abrindo uma categoria
com vários posts para falar sobre isso. O MOODLE, especialmente da versão 1.7
em diante, apresenta um sistema bem complexo de gestão de permissões que
permite uma ótima customização para atender às particularidades de cada projeto
educacional. Neste post irei fazer uma avaliação geral sobre este tema sem
entrar nas particularidades, deixarei o detalhamento para outros posts.




&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Quando
você instala o MOODLE ele já vem com um pacote de permissões preconfiguradas,
apresentando funções de administrador, criador de cursos, professor (editor), professor
(não editor), estudante, visitante e user registrado e cada uma dessas funções vem
com um conjunto de ações preconfiguradas para os diversos contextos de
aplicação, mas que podem ser editadas e modificadas para melhor atender cada
projeto particularmente. &nbsp;Aqui estou
falando de 4 conceitos novos que precisam ser melhor detalhados, são eles: ação;
permissão; função; contexto.



&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Ação
é a capacidade de ver, editar ou excluir alguma das centenas funcionalidades do
sistema. Por exemplo: ver publicações no fórum é uma ação; publicar mensagens
no fórum é uma ação; responder a uma mensagem no fórum é uma ação; avaliar uma
mensagem no fórum é uma ação; excluir um mensagem no fórum é uma ação; criar
fórum é uma ação; excluir fórum é outra ação;





&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Permissões,
segundo o moodle.org “são configurações
relativas às ações possíveis na definição de funções de usuário”, ou seja,
permissão é a capacidade concedida no sistema para que o usuário faça uma
determinada ação e existem centenas de permissões a ações possíveis no MOODLE.
Por exemplo: a função de professor (editor) tem permissão para criar e excluir fórum;
Já a função professor (não editor) tem permissão de avaliar as postagens nos fóruns;
Já a função estudante tem permissão apenas de ver, publicar e responder nos
fóruns. O MOODLE vem com um pacote de permissões preconfiguradas, mas elas não
são sempre assim, são dinâmicas, você pode reconfigurar para melhor atender às
particularidades de cada projeto.&nbsp;





&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Função,
segundo o moodle.org “é uma coleção de
permissões”, então uma função reune um
conjunto de permissões que podem ser definidas em vários contextos e um usuário
pode ainda possuir diversas funções no mesmo contexto ou em contextos
diferente.&nbsp;





&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Já a definição de contextos, segundo
moodle.org “são áreas lógicas do MOODLE
que definem o raio de ação e permissões”, ou
seja, são espaços virtuais distintos dentro do MOODLE e cada um pode ter
configuração de permissão independente. Eles são organizados de forma
hierárquica, com permissões herdadas dos contextos "mais abrangentes"
para os "menos abrangentes" na seguinte sequência: Sistema (toda a
instalação); Página Inicial; Categorias de Curso; Subcategorias de Cursos; Cursos;
Blocos/Atividades/Recursos





&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Assim
a definição de permissão envolve essas 4 variáveis, ação, permissão, função e
contexto. Assim um usuário pode ter uma função com determinadas permissões num contexto
para realizar várias ações e ter outro conjunto de permissões em outro
contexto. Segue alguns exemplos:





Um usuário pode ter função de professor (editor)
em um curso (contexto) podendo criar e excluir fóruns (ação), e já em outro
curso (outro contexto) ele pode ter função de professor (não editor) onde ele
não tem mais permissão para criar e excluir fóruns (ação); 

&nbsp;Um usuário pode ser definido em uma categoria de
cursos (contexto) como administrador (função), herdando todas as permissões
definidas para o administrador nesse contexto e em todos os outros de menor
abrangência (curso e blocos/atividades/recursos). Nesse caso ele não herda as
permissões definidas para o administrador (função) para os contextos mais
abrangentes (sistema e página inicial); 
&nbsp;É possível ainda sobrepor localmente uma
permissão, invertendo a hierarquia dos contextos, fazendo com que uma permissão
de um contexto de menor abrangência sobreponha às permissões de maior
abrangência. Assim um usuário pode ser definido no curso (contexto) como estudante
(função), onde nesse curso (contexto) ele não tem permissão para a ação “inserir
novas publicações” mas é definido num fórum (atividade, contexto inferior ao
curso) uma sobreposição de permissão para que ele possa “inerir novas
publicações” (ação) passando a ter essa permissão apenas naquele fórum específico
não tendo essa permissão nos demais fóruns do mesmo curso.
Já algumas funções podem ter permissões apenas
em um contexto e nenhuma permissão em outros contextos, como a função o criador
de cursos (função), que confere algumas permissões para configuração dos sistema
e categorias (contextos) mas nenhuma permissão no curso (contexto inferior a
sistema e categorias). Então definir alguém como criador de curso (função)
dentro de um curso (contexto) não irá atribuir a ele nenhuma permissão pois as
permissões dele só valem no sistema e categoria (contextos).  
&nbsp;Uma complicação é quando o usuário transita entre
dois contextos distintos, por exemplo, os módulos calendários, perfil, blog,
mensagens particulares, relatórios, mesmo tendo link de acesso dentro do curso
não fazem parte do contexto curso e sim do contexto sistema. Assim as
permissões dos estudantes devem ser configuradas em ambos os contextos, se
proibir uma ação no curso pode ser que ela não seja proibida no sistema e ele
continua com a permissão válida. 
&nbsp;Outra aplicação possível é configurar permissões
a um bloco (contexto inferior ao curso) para que ele seja visto (ação) apenas
pelos professores (função). 


&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Note
que sempre aparecem as variáveis: ação, permissão, função, contexto e as definição
de todas elas são de fundamental importância para se configurar o que os
usuários podem e não podem fazer, e onde eles podem ou não podem fazer algo
dentro do MOODLE.&nbsp;



&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Sei
que são conceito bem complicados, mesmo trabalhando com eles há alguns anos às
vezes eu tenho que criar um usuário teste para tirar prova se uma permissão
está configurada adequadamente. Tentei simplificar ao máximo o texto, espero
que tenha ficado um pouco mais acessível e pretendo detalhar um pouco mais
esses conceitos em outros posts.&nbsp;



&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Sugiro
sempre a leitura das instruções contidas no moodle.org e também as anotações de
ajuda no MOODLE e se língua for um problema use Goole Tradotor. Segue alguns
link indicados:



http://docs.moodle.org/19/en/Category:Roles
http://docs.moodle.org/22/en/Context
http://docs.moodle.org/22/en/Roles_FAQ


Por hoje esta é a minha contribuição, 
Atc, Eduardo Xavier
exavier28@gmail.com





&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;