所以我创建了我的第一个 Orchard 模块,它本质上只是管理面板中的 CRUD,并且有一个可供公众使用的前端表单。现在我需要在管理面板中为不同的用户角色提供不同级别的访问权限。我已经很好地创建了“管理员”用户,但现在我遇到了权限较低的用户的问题,他们只能看到记录的子集。
问题是我不知道从哪里开始。我很乐意在我的列表屏幕上说: if (UserRole == "SomeRestrictedRole") Select.Where("however we limit");
- 但我不知道如何访问UserRole(我对 .NET MVC 也相当陌生)。
我认为正确的解决方案是扩展 IPermissions 或类似的东西?但同样,我找不到任何教程或文档来为我指明正确的方向。
以下是我迄今为止阅读过的文档:
http://docs.orchardproject.net/Documentation/Creating-a-module-with-a-simple-text-editor
http://docs.orchardproject.net/Documentation/Understanding-data-access
http://docs.orchardproject.net/Documentation/Managing-users-and-roles
http://docs.orchardproject.net/Documentation/Understanding-permissions
如有任何建议,我们将不胜感激!
最佳答案
对,不要根据角色限制访问,而是根据权限限制访问。查看任何 Permissions.cs 以获取实现示例。然后搜索其中声明的权限以查看强制执行它们的示例。这真的很简单,你就会明白:)
关于c# - 自定义模块中的 Orchard 权限,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9202828/