管理员帐户:何时,何时以及如何?

Pic*_*els 5 php asp.net ruby-on-rails

在何处,何时以及如何为私人网站创建管理员帐户/用户?

所以我要问的是创建第一个管理员帐户/用户的首选技术是什么.就我而言,这是一个私人网络应用程序.我说的是将拥有该应用程序的帐户/用户,如果需要,将创建/推广其他管理员.我想你可以这个人是root用户吗?

以下是我在其他网站/网络应用程序中遇到的一些方法.

安装向导:
您在博客软件或论坛中看到了很多.安装应用程序时,它会要求您创建管理员用户.私人网络应用很可能没有这个.

安装文件:
您运行以安装应用程序的文件.此文件将为您创建管理员帐户.

配置文件:
包含管理员帐户凭据的配置文件.

手动将其插入数据库:
手动将管理员信息插入数据库.

kik*_*ito 3

什么时候:

处于引导阶段。有人建议seeds.rb。我个人更喜欢使用bootstrapper gem(带有一些允许我解析 csv 文件的附加功能)。

此操作允许您创建一个 rake 任务,可以像这样调用:

rake db:bootstrap
Run Code Online (Sandbox Code Playgroud)

这将创建初始管理员用户以及任何种子数据(例如国家/地区列表或默认博客格式等)。该脚本非常灵活。如果您愿意,您可以让它要求输入密码,或接受密码参数。

如何:

在所有情况下,我都使用declarative_authorization来管理用户权限。

您的管理员用户必须在附加的角色列表中返回一个名为“admin”(或您选择的任何名称)的角色。我通常每个用户有 1 个角色,主要是因为我可以使用角色继承(例如默认情况下管理员也是编辑者)。这意味着在我的数据库中,我有一个名为“role_id”的用户字段。0 通常用于管理员角色,因为它是第一个创建的角色。

在哪里:

db/bootstrap/users.rb(或 yaml 或 csv)内的特定文件指定激活了管理员角色的用户的详细信息。该rake db:boostrap命令解析该文件并相应地创建用户。