我是新来的drupal。这是一个非常愚蠢的问题,我猜。 我已经启用了PHP过滤模块,以便我可以使用自己的PHP代码创建一个新页面。我希望只有经过身份验证的用户才能访问此特定页面,匿名用户不可见。我怎样才能做到这一点?我可以在drupal中为单个页面设置权限吗?还是有可能确定一个匿名用户试图通过PHP代码访问当前页面?设置页面访问权限在drupal
5
A
回答
5
既然你已经提到你是Drupal的新手,谨慎的一句话 - 为你的自定义代码使用PHP过滤器被认为是不好的做法。这是一个黑客攻击,这是一个安全问题。
编写自定义模块好多了,它可以实现自己的自定义权限,可以检查等等。有一个很好的sample module,你可以看看它看起来应该如何。显然,请查阅手册。这听起来并不难。
但回到你的问题。你可以在你的经过PHP过滤的页面中放入以下行:
global $user;
这会让你访问一个代表当前用户的对象。 $user->roles
是一个表示用户角色的数组。您可以检查它是否有authenticated user
(或稍微好一点 - 您创建的自定义角色)。
2
为了防止匿名用户访问一个页面,您可以使用下面的PHP代码:
<?php
// we have to access the content of the global-scope variable $user
global $user;
//Checking if the user is registered
if (in_array('authenticated user', $user->roles)==FALSE) {
header('Location:/content/restrictedaccess') ;
}
?>
//页内容
- 更多关于我如何创建我的网站使用Drupal此信息:http://modeling-languages.com/content/how-i-created-site-drupal
4
阅读以上答案后,您可能还会考虑现成的simple access模块。它符合我的要求,如果您要避免使用PHP过滤,并且不想创建自己的模块(无论出于何种原因),则可以查看simple access。
+0
谢谢!这帮了我。 – BigJoe714 2010-05-17 13:45:37
相关问题
- 1. Salesforce权限设置访问
- 2. Drupal“您无权访问此页面。”
- 3. 在Semaphore上设置访问权限?
- 4. Drupal的分类标准访问权限 - 需要设置帮助
- 5. 设置Cookie访问页面
- 6. 如何设置并获取Drupal中最后访问的页面?
- 7. 如何设置角色来限制在asp.net中访问页面?
- 8. 匿名用户:您无权访问此页面。权限确定
- 9. svn设置权限问题
- 10. DRUPAL清除Cookies后,您无权访问此页面
- 11. Drupal菜单权限问题
- 12. 您无权访问此页面drupal 8管理登录页面错误
- 13. 限制访问页面php
- 14. Orchard:受限访问页面
- 15. Drupal - 受限内容访问显示用户的登录页面
- 16. 根据cookie限制对页面的访问。 Drupal的
- 17. 限制访问Drupal中的匿名用户页面
- 18. 无法访问Facebook设置页面
- 19. 设置权限
- 20. 等待ShellExecuteEx(在Windows进程中设置访问权限)
- 21. 在AlwaysOn环境中设置Crystal Report的只读访问权限
- 22. 在JavaScript对象文字中获得设置访问权限
- 23. 在Windows中设置用户访问权限
- 24. 权限访问sys.dm_db_index_usage_stats
- 25. Drupal 7新手问题:节点访问权限=禁用?
- 26. 访问权限数据库设计
- 27. 您没有足够的权限访问此页面
- 28. TRAC用户权限 - 不允许访问页面历史记录
- 29. 您没有足够的权限访问此页面
- 30. 如何通知用户他没有访问页面的权限?
谢谢Eli :)对不起,我很感谢你。我非常重视你的谨慎言辞:)你的建议和Jordi的代码使它变得非常简单!尽管我很快用“简单访问”模块取代了它。它非常简单,完全符合我的要求。我将在未来使用您的链接创建自己的模块的示例模块。它是一个好的首发! – Nikhil 2009-10-14 09:49:15