在子域之间共享登录 -- 7 领域 和 authentication-authorization 领域 drupal 相关 的问题

Login shared between subdomains


4
vote

问题

中文

如果我应该允许用户使用相同的用户名/密码登录,在以下解决方案之间选择时,我应该考虑什么?

  • 安装,并使用面包店单点登录系统在主站点上,以及所有子域。
  • 共享包含用户数据的数据库表。
英文原文

If I should allow users to log in using the same username/password, what should I consider when choosing between the following solutions?

  • Install, and use Bakery Single Sign-On System on the main site, and all the subdomains.
  • Share the database table containing the user data.
     

回答列表

5
 
vote
vote
最佳答案
 

Bakery Decouples多物质 - 如果您正在共享表,则必须在多站体配置中的所有站点上使用完全相同的Drupal版本,并更新它们洛克斯特普。使用 Bakery ,主站和从站可以运行不同的drupal版本。此外,修改主站点上的 users 表格的任何模块都需要应用于具有相应设置的从站点。

Bakery 提高可伸缩性 - 在从站点上未创建用户帐户,直到需要,节省服务器计算和数据存储资源。

Bakery 同步会话 - 例如,如果用户从一个面包店站点注销,则用户将从该组中的所有面包店站点注销。 (要实现与共享表的等效行为,您还需要共享 sessions 表,这将进一步复杂化维护。)

 

Bakery decouples the multisites xe2x80x94 if you're sharing a table, you must use exactly the same Drupal version on all sites in the multisite configuration, and update them in lockstep. With Bakery, the Master and Slaves can be running different Drupal versions. Additionally, any modules that modify the users table on the Master site would need to be applied to the Slave sites with corresponding settings.

Bakery improves scalability xe2x80x94 user accounts are not created on slave sites until they are needed, conserving server computational and data storage resources.

Bakery synchronizes sessions xe2x80x94 for example, if the user logs out of one Bakery site, the user will be logged out of all Bakery sites in that group. (To achieve equivalent behavior with shared tables, you'd also need to share the sessions table, which would further complicate maintenance.)

 
 
 
 
2
 
vote

如果您唯一关注的是共享用户名和密码,则可能需要考虑OpenID,特别是因为支持在Drupal Core中。

如果这似乎看起来不像你的用户可以管理那么我会考虑 Janrain模块它将允许您的用户使用他们可能已经拥有的整个帐户登录,例如Facebook,Twitter和Google。

值得注意的是,这是Stackexchange使用的方法。

 

If your only concern is sharing username and password you might want to consider OpenID, especially since support is in Drupal core.

If that doesn't seem like something your users could manage then I'd consider the Janrain module it would allow your users to sign in with a whole host of accounts they probably already have, like Facebook, Twitter and Google.

It's worth pointing out that this is the method used by StackExchange.

 
 

相关问题

3  如何追溯应用Mollom垃圾邮件过滤?  ( How to retroactively apply mollom spam filtering ) 
我被要求清理几年运行的网站,除了大量有效内容之外还累积了一些垃圾邮件。 我刚刚在网站上安装了Mollom,以帮助减少未来的垃圾邮件帖子;但是有些方法可以让Mollom过程已经发布到网站上的内容,并为我的评论销售潜在的垃圾内容(而不是单独查看全部有效内容的所有)? ...

4  直接调用Mollom Captcha  ( Invoke mollom captcha directly ) 
我在ctools form向导中有一个自定义表单,我想使用mollom。有没有API函数,我可以用来将它放在该页面上的表单API中? ...

2  gmap视图模块 - 弹出窗口太大了  ( Gmap views module popups are too big ) 
我正在使用gmap模块及其视图对应。我拥有的问题是,我正在使用自定义文本字段来显示以我从查询中删除的HTML包裹的字段。但是,弹出窗口不会正确尺寸;它最终太大了。这是我的自定义文本字段的代码: <div id="col1"> [field_thtr_img_fid] </div> <div id="col2"...

2  在哪里插入额外的注销功能的最佳位置?  ( Where is the best place to insert additional logout functionality ) 
在用户注销的情况下插入附加逻辑可能会在user.pages.inc中查看 function user_logout() .inc。此代码在核心模块中,您不应该编辑它,但工作得很好...例如,通过将以下代码添加到'user_logout()'函数的顶部... $last_run = variable_get('...

9  以编程方式冒充另一个用户,而不会导致当前登录用户退出  ( Programmatically impersonating another user without causing the currently logged ) 
如何更改全局 $user 的值,执行自己的代码,并恢复 99887664 的原始值,而不会导致当前用户注销如果发生错误? ...

16  模块如何检测输出“访问拒绝”页面?  ( How can a module detect when the access denied page is output ) 
模块如何检测Drupal输出"访问被拒绝" 页面时? 我知道如何用Drupal 6来做;我需要知道如何用Drupal 7进行。 ...

3  如何自动突出显示页面上显示的代码的语法?  ( How to automatically highlight syntax of code displayed on page ) 
我正在开发一个网站,用于从不同的编程语言发布我的代码。我想突出用不同颜色的代码语法。但是,手动这样做是耗时的。 是否有任何模块或方法可以自动执行此操作?严格,它应该以CSS方式完成。 ...

1  自定义SQL:NodeReference Joins和最新视频  ( Custom sql nodereference joins and latest vid ) 
我有一个构成自定义SQL查询的时间。 查询有多个Nodereference,需要返回最新的节点修订版。 我理解得很好,但由于某种原因,返回最新版本的额外复杂性正在绊倒我。 我宁愿通过创建视图并以编程方式执行它们,仅仅因为 WHERE 条款的复杂性,就会以编程方式执行它们。 我已经尝试翻译等同的视图的输出,但是对视图粘...

7  如何创建“逐步处理”内容类型?  ( How might i create a step by step process content type ) 
我正在考虑为Intranet创建一个过程手册。大多数(全部?)的流程都有一个非常明确的订单,尽管实际顺序可能不时改变。该计划是有主题专家,可能是六十多个左右,输入和更新流程页面。该网站的用户需要能够在与客户交互时快速审查流程,通常面对面。 这是我想到的选项: 培训作者使用有序列表。 pro:最容易的。康科:依靠培...

20  如何使用带有自定义表的数据与寻呼机进行排序表?  ( How do you make sortable tables with a pager with data from a custom table ) 
对于Drupal 6,您可以做到这样的事情: $header = array( array('data' => t('Order id'), 'field' => 'order_id'), ... array('data' => t('Transaction time'), 'field' => 'p...

148  推荐的目录权限是什么?  ( What are the recommended directory permissions ) 
我正在努力部署drupal 7站点,我找不到关于建议的安全有效文件和目录权限的任何文档。 特别是 default/files/ (也是子目录?), settings.php , .htaccess 以及其他任何我应该知道的。 ...

5  从Drupal表单字段/标签中删除冒号  ( Remove colons from drupal form fields labels ) 
如何删除:从使用Drupal形式API制作的表单后出现: ...

5  主题Drupal表单API复选框作为网格  ( Theme drupal form api checkboxes as a grid ) 
我有一个自定义表单,显示大约2多个复选框的表单元素。如果可能,我想在表中每行输出3个。我怎么能做到这一点? $form['preference'] = array( '#type' => 'checkboxes', '#default_value' => 1373, '#require...

2  如何表示用户作为“系统帐户”?  ( How to denote a user as a system account ) 
在Unix世界中,有"用户帐户" 用于人类使用,并且有软件使用"系统帐户" 。 在一个drupal站点上,我有几个系统账户旨在通过 services.module API呼叫使用。 我希望这些帐户能够通过服务API(显然)登录,但我想阻止这些帐户通过标准 99887665 表单来登录。我还想防止这些帐户在标准的"活...

7  我可以改变调用不同模块的挂钩实现的顺序吗?  ( Can i change the order in which hook implementation by different modules are cal ) 
在D6中,我使用opply模块,但我想覆盖一小部分其行为。我有一个自定义模块,但我在Contract模块的实现之前调用了相关钩子的实现,因此Contract模块的版本"WINS" 。 有没有办法改变它,并强迫我自己的钩子呼叫? 以下是具体细节: 我想在评论表单中删除未注册用户的默认"匿名" 用户名。我创建了一个小...

7  如何在地图上有非确切的位置?  ( How can i have non exact locations on a map ) 
我正在使用gmap帮助用户在他们的地区找到其他人。但我想让用户拥有一些隐私,只能在地图中提供他们的城市和邮政编码,但仍然有数据库中的完整地址以用于邮寄。我怎样才能做到这一点? PIN在地图上的位置也应该仅基于城市和拉链,显然它可能是最精确的位置。 例如,让我们说总统在我们的网站上注册。他进入了他的完整地址,1600宾...

13  Drupal 7和Pagespeed  ( Drupal 7 and pagespeed ) 
apache模块 pagespeed 为html,javascript等提供各种优化,这很好。< / p> 但是,它的一些功能与Drupal自己的聚合和优化方法是多余的。因此,有人测试哪些过滤器对典型的Drupal 7网站有用,由于Drupal已经为其提供支持而无用? ...

8  如何创建批量节点创建界面?  ( How can i create a bulk node creation interface ) 
我有一个接口的请求,其中能够在一个屏幕上批量创建具有少量所需字段的节点(例如,标题,日期和节点引用)。 我想象一些可编辑表视图/网格,每个行代表单个节点。 实现这样的东西的最佳方法是什么? ...

7  如何使用CDN自动提供Drupal 7的静态内容?  ( How to automatically deliver drupal 7s static contents using cdns ) 
我使用"Rackspace云文件" 服务作为我的CDN(内容传送网络)。此服务为许多与CDN相关的自动化提供了很好的API。请帮助我与Rackspace云文件集成Drupal。我甚至不想手动将静态内容复制到CDN。 ...

2  如何提供带有Node调用的上下文/ NID的过滤器?  ( How can i provide a filter with context nid of node invoking ) 
我目前正在处理具有一个过滤器的自定义模块,该过滤器需要输出的节点对象。 最初过滤器只需从arg(1)中的niD中拉动NID,并在节点对象中使用该滤波器,但不幸的是,如果滤波器缓存被刷新,并且节点重建从节点页面本身以外的任何位置重建其输出(1)不会包含NID,因此过滤器将破坏。 我正在考虑将nid放入令牌转换的令牌,但...




© 2021 it.wenda123.org All Rights Reserved. 问答之家 版权所有


Licensed under cc by-sa 3.0 with attribution required.