【项目展示】后台管理系统、前后端不分离开发、数据库加密

Background_Management_Systeme

基于Django前后端不分离开发的后端管理系统学习

项目地址

Github项目地址

初始化设置

安装依赖

pip3 install -r requirements.txt

数据库创建

image-20230323232659140

DATABASES = {
    'default': {
        # 连接本地mysql数据库【需要下载一个第三方库:mysqlclient】
        'ENGINE': 'django.db.backends.mysql',
        'NAME': 'Background_Management_Systeme',		# 数据库名字,可以更改为自己定义的
        'USER': 'root',
        'PASSWORD': '123456',							# 数据库密码
        'HOST': '127.0.0.1',
        'PORT': '3306',
    }
}

# 其余选项,若是在本地创建数据库,则不需要改动;若是链接服务器,需要变更

数据库迁移

# 命令行依次输入

python manage.py makemigrations

python manage.py migrate

生成初始密码

密码表存储逻辑

数据库中存储关于用户名和密码的数据表设计如下:

  • 用户名:真实数据
  • 密码:MD5算法加密后的结果

因此初始化数据库密码表的时候,不能把密码存储为真实的密码,而应该存储原始密码经过MD5算法加密后的结果

初始化密码

  1. 找到密码表

image-20230323233929893

  1. 新增密码
用户:GSF
密码:7d716550d434a76e707377db056a9bcd

# 上述密码的真实值为:123,在用户登录页面输入该真实值,即可通过验证,完成登录

image-20230323234123928

  1. 自定义新增密码
  • MD5加密算法如下:
def md5(data_string):
    obj = hashlib.md5(settings.SECRET_KEY.encode('utf-8'))
    obj.update(data_string.encode('utf-8'))
    return obj.hexdigest()

# settings.SECRET_KEY是Django自己生成的字符密钥,可在settings.py文件内查看。即加密算法等价于:

def md5(data_string):
    obj = hashlib.md5('django-insecure-hgel4k_@i84z%dwm8!70#%!)=p#*9p#7t8h2my@*s=npzo5ku6'.encode('utf-8'))
    obj.update(data_string.encode('utf-8'))
    return obj.hexdigest()

# 新建文件,运行该函数,即可得到你创建的密码在数据库对应的存储值

# 注意:函数参数为字符类型
md5('你的密码')  

登录

运行项目

python manage.py runserver

登陆网址

http://127.0.0.1:8000/login/

image-20230323235028066

image-20230323235059126

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
近年来,随着前端技术的快速发展和普及,前后端分离开发模式越来越受到开发者们的青睐。尤其是在Web应用程序开发过程中,这种模式更是得到了广泛的应用。同时,Spring Boot作为一种快速构建应用程序的开发框架,也被越来越多的开发者所熟知和使用。 前后端分离的Spring Boot应用程序可以通过Shiro完成一个简单的后台管理系统。Shiro是一种基于Java的安全框架,提供了一系列的API和组件,用于管理和保护应用程序的资源。 在使用Shiro完成后台管理系统时,我们可以采用以下的步骤: 1. 在pom.xml文件中添加Shiro的依赖项,以及其他必要的依赖项。 2. 创建Shiro的配置类,配置Shiro的各种组件和参数。这个配置类可以包含身份验证处理器、授权处理器、安全管理器、加密解密处理器等等。Shiro的配置类可以简单到只有几行代码,也可以非常复杂和庞大。 3. 创建Spring Boot应用程序的主类,该类包含启动和运行Spring Boot应用程序的代码。 4. 创建数据模型、服务类和控制器类,分别用于定义和操作数据库模型、提供各种服务和控制用户请求的流程。 5. 在控制器类中添加Shiro的注解来限制用户的访问权限。例如,@RequiresAuthentication、@RequiresPermissions、@RequiresRoles等等。 6. 最后,测试和部署应用程序。测试可以采用JUnit等测试框架,部署可以采用普通的部署流程。 以上就是使用Shiro完成后台管理系统的基本步骤。随着技术的进步和开源社区的发展,Shiro也在不断更新和完善自身功能和特性,为开发者提供更加便捷和高效的安全保护机制。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值