首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >数据库访问数据库

数据库访问数据库
EN

Drupal用户
提问于 2015-09-13 05:56:50
回答 1查看 43关注 0票数 0

我有一个包含许多外部数据库的drupal。我在所有数据库中都做同样的事情,但是我想根据登录用户的角色限制对数据库的访问。

我是说:

  • 管理用户可以访问所有数据库。
  • 员工可以访问db1和db2
  • 工人可以访问db1

如何控制每个角色的数据库访问?

EN

回答 1

Drupal用户

发布于 2015-09-13 06:55:31

如果您的意思是控制Drupal为自己的数据库表使用的数据库(例如,包含所有注册用户、活动会话和创建的节点的表),那么这是不可能的。无法根据用户的角色告诉Drupal使用哪个数据库。

如果您询问的是您自己的模块,那么这是可能的,但是您的模块需要自己来处理这个问题,因为Drupal没有我的特定功能来处理您的用例,除了下面的功能:

  • user_has_role()检查作为参数传递的用户帐户(或当前登录的用户)是否将角色作为参数传递。
  • db_set_active()使用settings.php文件中的一个键设置从连续的数据库API调用中使用的数据库

我不使用db_set_active(),而是使用$options['target'],它可以从查询数据库所需的任何Drupal函数中使用。

票数 1
EN
页面原文内容由Drupal提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://drupal.stackexchange.com/questions/174186

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档