# Moodle 解决权限冲突的办法

**URL:** <https://www.isharkfly.com/t/moodle/5712>\
**Category:** PHP\
**Created:** [September 29, 2012, 4:38pm UTC](https://www.isharkfly.com/t/moodle/5712 "2012-09-29T16:38:34Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![honeymoose](https://www.isharkfly.com/user_avatar/www.isharkfly.com/honeymoose/32/20796_2.png) [@honeymoose](https://www.isharkfly.com/u/honeymoose)\
**Post date:** [September 29, 2012, 4:38pm UTC](https://www.isharkfly.com/t/moodle/5712/1 "2012-09-29T16:38:34Z")

</div>

通常情况下在一个“低级别”情境中的权限会覆盖一个“高级别”情境中的权限，除非通过“禁止”来确保权限不能被修改。

如果在某个情境下，同一个用户拥有两个角色，其一被允许使用某权限，而另一个则被阻止使用该权限，那最终用户是否能使用该功能呢？Moodle通过一个“决策器”解决该问题。

例如，一个学生在某个课程中有两个角色，一个角色允许他“发帖”，另一个角色有阻止他“发帖”。这种情况下，魔灯将首先检查“课程类别”和“站点级别”这两种情境，通过检查另外一个已定义的访问权限来帮助决定。如果还没有检查到，默认情况将访问权限设置为“阻止”（因为两个设置彼此冲突，将就此取消，从而您就没有访问的权限）。
