V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
推荐学习书目
Learn Python the Hard Way
Python Sites
PyPI - Python Package Index
http://diveintopython.org/toc/index.html
Pocoo
值得关注的项目
PyPy
Celery
Jinja2
Read the Docs
gevent
pyenv
virtualenv
Stackless Python
Beautiful Soup
结巴中文分词
Green Unicorn
Sentry
Shovel
Pyflakes
pytest
Python 编程
pep8 Checker
Styles
PEP 8
Google Python Style Guide
Code Style from The Hitchhiker's Guide
mzmxcvbn
V2EX  ›  Python

不开放注册的后台,首位用户怎么添加好

  •  
  •   mzmxcvbn · 2020-09-15 09:06:27 +08:00 · 5053 次点击
    这是一个创建于 1512 天前的主题,其中的信息可能已经有所发展或是发生改变。

    手动写数据库不行。
    是写死一个 superadmin 在代码里?
    还是程序初始化的时候自动加进数据库?
    或者还有其他啥好办法

    26 条回复    2020-09-16 08:02:07 +08:00
    kaiki
        1
    kaiki  
       2020-09-15 09:07:40 +08:00
    安装的时候填写?
    28ms
        2
    28ms  
       2020-09-15 09:09:58 +08:00 via iPhone   ❤️ 1
    固定在数据库初始化 sql 中
    H15018327040
        3
    H15018327040  
       2020-09-15 09:10:42 +08:00
    做一个简单的注册页,注册好了之后把注册页访问屏蔽。
    guiling
        4
    guiling  
       2020-09-15 09:10:42 +08:00 via Android
    首位用户是超级管理员,数据库写死,登录账号可以修改密码,其他用户由管理员创建
    wzq001
        5
    wzq001  
       2020-09-15 09:14:28 +08:00
    初始化,写进去

    类似 laravel 的 seeder 处理
    TimePPT
        6
    TimePPT  
       2020-09-15 09:14:31 +08:00 via Android
    超管在后台搭建初始化时生成,并进入管理员后台,其他用户管理员手动在后台添加就行。安全点的密码初始化时随机分配,首次登录时提示修改密码。(高安全要求时初始化密码仅用于首次登录,登录后强制修改强密码)
    shyy06
        7
    shyy06  
       2020-09-15 09:15:30 +08:00
    系统的首尾注册用户 不应该是 admin 用户么?
    QuincyX
        8
    QuincyX  
       2020-09-15 09:22:22 +08:00
    我是这么处理的,如果用户表为空,第一个登陆的用户不管账号密码是什么都会自动注册为超级用户并进入系统设置页再去修改资料或者添加其他用户
    securityCoding
        9
    securityCoding  
       2020-09-15 09:25:25 +08:00
    为什么手写 sql 不行 , 不单单是管理员吧,还有其他资源需要初始化啊
    cmdOptionKana
        10
    cmdOptionKana  
       2020-09-15 09:27:36 +08:00
    最简单的思路:有一个注册页面,后端判断数据库为空时允许注册,否则拒绝注册。

    从这个简单思路可以衍生出各种改善,比如这个页面不做了,改成命令行操作,后端还是不变。比如直接在初始化时判断数据库是否为空,空就自动创建第一个默认账号…… 等等
    pepesii
        11
    pepesii  
       2020-09-15 09:36:57 +08:00
    先写一个默认的用户,通过这个用户添加一个 admin 用户,然后再用添加的 admin 把这个默认用户给禁用了
    Leigg
        12
    Leigg  
       2020-09-15 09:39:28 +08:00 via Android
    你当要提供一个注册接口,只是不暴露而已
    annielong
        13
    annielong  
       2020-09-15 09:40:39 +08:00
    需要安装就安装时候注册,不需要安装就数据库写入,
    Molita
        14
    Molita  
       2020-09-15 09:42:31 +08:00
    初始化的时候可,也可以在 admin 后台创建,也可通过脚本
    JaguarJack
        15
    JaguarJack  
       2020-09-15 09:46:11 +08:00
    安装的时候直接写入
    agagega
        16
    agagega  
       2020-09-15 09:47:15 +08:00
    你的框架应该支持 Seed 功能
    fenglangjuxu
        17
    fenglangjuxu  
       2020-09-15 09:49:24 +08:00
    通过开关控制啊
    k9982874
        18
    k9982874  
       2020-09-15 11:08:17 +08:00   ❤️ 2
    @QuincyX #8
    运维:我先试试好不好用
    开发:谁登录系统了?密码是什么?
    运维:我 TM 随便输的,就试试好不好用
    楼主卒
    CallMeReznov
        19
    CallMeReznov  
       2020-09-15 11:10:37 +08:00
    django 的那套机制挺好
    wangkun025
        20
    wangkun025  
       2020-09-15 11:18:06 +08:00
    我是命令行输入。跟手写数据库命令基本差不多。
    HashV2
        21
    HashV2  
       2020-09-15 12:10:49 +08:00
    django 可以命令行 create superadmin,你可以参考这个来
    VeryZero
        22
    VeryZero  
       2020-09-15 12:14:20 +08:00
    不是应该看需求吗?这东西又没统一标准
    realpg
        23
    realpg  
       2020-09-15 12:19:11 +08:00
    install 过程
    Takamine
        24
    Takamine  
       2020-09-15 19:09:11 +08:00 via Android
    用 django 。:doge:
    dorothyREN
        25
    dorothyREN  
       2020-09-15 21:29:31 +08:00
    程序每次启动的时候随机生成一个不入库的超级用户
    wuwukai007
        26
    wuwukai007  
       2020-09-16 08:02:07 +08:00 via Android
    弄个注册页面,但是路由自己知道
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   3103 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 34ms · UTC 14:02 · PVG 22:02 · LAX 06:02 · JFK 09:02
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.