V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Hanggi
V2EX  ›  程序员

如何初始化网站后台管理员?

  •  
  •   Hanggi · 2020-03-31 16:22:15 +08:00 · 3342 次点击
    这是一个创建于 1692 天前的主题,其中的信息可能已经有所发展或是发生改变。

    网站后台有管理员系统,可以区分权限。

    问,部署一个新的网站后台如何初始化这个管理员? (除了上 DB 加一个管理员,或者先去掉认证模块加一个管理员再把认证开开。)

    有没有简单优雅的方法?

    12 条回复    2020-03-31 23:50:45 +08:00
    cz5424
        1
    cz5424  
       2020-03-31 16:23:58 +08:00 via iPhone
    问一下网站的开发比这里问管用
    yunye
        2
    yunye  
       2020-03-31 16:24:22 +08:00
    学习一下 wordpress 呗
    ayase252
        3
    ayase252  
       2020-03-31 16:28:39 +08:00 via iPhone
    只是想法,先检查下数据库里有没有管理员账户,没有就生成一个随机的管理员账户,账户名和密码放在目录下面,别直接展示给用户。用这个账户做好初始化之后用内置删掉这个账户。
    varrily
        4
    varrily  
       2020-03-31 17:24:30 +08:00
    wordpress 就是首次安装跳到初始化页面,自己设置管理密码。
    labulaka521
        5
    labulaka521  
       2020-03-31 17:37:30 +08:00
    首次安装的时候创建?
    metinfo
        6
    metinfo  
       2020-03-31 18:23:08 +08:00
    新部署网站时走安装步骤啊,要求安装者填写管理员信息,你可以参考一下我们的开源系统,米拓企业建站系统: https://www.metinfo.cn/download/62.html
    下载安装就能明白,而且后台有比较完善的管理员权限设置功能,供你参考。
    Lax
        7
    Lax  
       2020-03-31 19:30:37 +08:00
    用代码初始化管理员,设置密码。放在一个经过简单认证的页面地址里,用完删除该页面。
    baobao1270
        8
    baobao1270  
       2020-03-31 20:13:07 +08:00
    对于像 PHP 这样的,deploy 脚本里初始化,初始密码 print 在 console 上
    对于 .net core 这样持久性的,init 时作为 singleton 运行初始化,也是初始密码 print 在 console 上
    whatsmyip
        9
    whatsmyip  
       2020-03-31 20:46:52 +08:00
    两种方式吧

    一、初始化的时候添加管理员用户,Wordpress 是这种方式,比如说这样
    https://github.com/newnius/QuickAuth/blob/96ff4203d67393a68b1cbdfc1bc42c4bcb4b211e/install.php#L23

    二、如果带注册功能,那么第一个用户就自动设置成管理员用户,代表有 gitea,比如这样
    https://github.com/newnius/short-link/blob/c5ed960964ef8ec0c81edb8d0bd497aecbae2b5f/user.logic.php#L19
    hbolive
        10
    hbolive  
       2020-03-31 22:38:02 +08:00
    安装的时候,初始化一个管理员。。
    xuanbg
        11
    xuanbg  
       2020-03-31 23:11:27 +08:00
    简单优雅的办法就是执行 sql 脚本直接把数据初始化到数据库
    shazh520
        12
    shazh520  
       2020-03-31 23:50:45 +08:00
    我尝试过 SQL 脚本创建,也尝试过专门有管理员注册接口。个人感觉写注册接口要好一点,可以在接口中限制管理员的数量,服务部署好之后就注册管理员。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   5512 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 34ms · UTC 07:43 · PVG 15:43 · LAX 23:43 · JFK 02:43
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.