来源:http://trac.seagullproject.org/wiki/Modules/User
在seagull框架中比较重要的模块之一是用户及安全模块,它允许站点的管理员:
使用用户管理的界面,管理者可以往系统添加用户,就像用户自己注册一样。不过管理员添加用户时有更多的选项,例如设置用户的角色,设置默认的组织, 用户状态是否激活等。同时,管理员也可以重置所有用户的密码,并且可以选择是否以email的形式将新的密码发送给用户。最后,管理员可以根据需要为某个特定用户调整用户权限。
一个组织就是一个由任意的用户组成的组。最具代表性的使用是将在一家公司工作的用户归入到同一个组织。在Seagull中组织(org)的概念是随意的,并且可以通过用户模块的conf.ini文件关闭这这个功能。也就是,一些比较小,比较简单的seagull安装可能不需要用户分组.
目前,组织被设计为一组嵌套的层次,那么举个例子,像下面的这些功能是很容易实现的:
在这种情况下,下面的层次是非常清楚的
因此,使用一组嵌套的获取分枝的操作,你可以轻而易举地跟踪从公司到转卖者之间的供应链,免去了管理操作所需的大量代码。使用组织管理器你可以设置组织的类型来更进一步帮助分组,上述的情节,它将分别等同于company,supplier,client,reseller四种分类.
另外,每个组织都有默认角色和默认偏好的概念,所以组中所创建的每个用户将会采取默认的赋值。当系统管理很多用户时,它是有帮助的。
按下列步骤在admin后台管理界面创建一个“管理组织”的链接:
1) 在modules/user/conf.ini设置:
[OrgMgr] enabled = true requiresAuth = true adminGuiAllowed = true typeEnabled = false ; organisations can be typed, choose this to enabled editing options
2) 从admin后台管理界面选择 Navigation → New Section:
Section Info ============ Title: Manage Organisation Parent Page: Users and Security Target: output from specified module Module: user Manager: OrgMgr Action: none
Editing Options =============== Publish (ON) Can view: root 现在就可以选择Users and security -> Manage Organisation来管理组织了。
权限与角色管理的细节
使用偏好管理界面,管理员可以往系统添加任意数目的偏好。一组偏好被定义为一个用户的设置,它允许个人对软件的使用环境进行设置。用户的偏好持续贯穿于系统的Session,偏好的代表性实例如下:
凡是管理员所设置的偏好都作为默认的,公共用户都能够看到的。例如,假如你以管理员的身份登录,在偏好管理部分设置网站的风格为“默认”,则站点的所有普通用户都会看到这种外观结构。
每个用户可以修改全局中已设置的任何偏好,用户登陆页面重定向到的'My Account' 页面允许用户修改他们的偏好.
使用它的步骤如下:
登陆有很多选项可以设置,如:
所有的这些设置是在用户模块配置文件seagull/modules/user/conf.ini中设置的,或者以管理员身份登陆,进入模块列表,单击'Users and Security'进行修改。
重定向的默认格式是$moduleName^$managerName,如果你只是指定了模块名,那么它会自动选择和模块名一样的管理类名。
至于监视器,通过注册一个监视器你可以为系统中的任一事件添加额外的行为,这非常适用于登陆事件。你可能想注册监视器的典型行为包括: