当前位置: 首页 > news >正文

网站的验证码是怎么做的网站运营是具体的

网站的验证码是怎么做的,网站运营是具体的,广告设计专业属于什么大类,室内装饰设计风格一、背景 某次某平台进行安全性符合型评估时,列出了数据库相关安全选项,本文特对此记录,以供备忘参考。 二、安全配置 2.1、数据库系统登录时的用户进行身份标识和鉴别; 1)对登录Mysql系统用户的密码复杂度是否有要…

一、背景

某次某平台进行安全性符合型评估时,列出了数据库相关安全选项,本文特对此记录,以供备忘参考。

二、安全配置

2.1、数据库系统登录时的用户进行身份标识和鉴别;

1)对登录Mysql系统用户的密码复杂度是否有要求?

即需要满足密码复杂度要求,至少8位长度,大小写各1个,数字2个,特殊字符至少1个,密码有效期3个月。现场版本5.7.34;Mysql 5.6后自带validate_password.so插件(windows为validate_password.dll)

//检查是否启用命令,如果啥也没返回,就是没启用
mysql> SHOW VARIABLES LIKE 'validate_password%';
mysql> SELECT * from mysql.plugin ;
mysql> show plugins;#安装插件
mysql> INSTALL PLUGIN validate_password SONAME 'validate_password.so'; #Linux
mysql> INSTALL PLUGIN validate_password SONAME 'validate_password.dll';  #windows#验证
mysql> SELECT * from mysql.plugin ;#创建一个名为password_policy的新表,用于存储密码策略的相关信息
CREATE TABLE password_policy (id INT PRIMARY KEY AUTO_INCREMENT,uppercase_required BOOLEAN NOT NULL,  #至少一个大写字母lowercase_required BOOLEAN NOT NULL,  #至少一个小写字母number_required BOOLEAN NOT NULL,     #至少一个数字special_character_required BOOLEAN NOT NULL,  #至少一个特殊字符min_length INT NOT NULL   #密码的最小长度
);

在这里插入图片描述
完成后修改配置文件写入:

plugin-load-add=validate_password.so
validate-password=ON
validate_password_policy = 1   ##0(LOW), 1 (MEDIUM), 2 (STRONG)
validate_password_length = 8
validate_password_mixed_case_count = 1  #大小写字符长度,至少1个
validate_password_number_count = 2
validate_password_special_char_count = 1  #特殊字符至少1个
default_password_lifetime=180
password_history=6   #能选择最近使用过的6个密码
password_reuse_interval=365  #设置不能选择最近一年内的密码#验证测试密码符合度
SELECT VALIDATE_PASSWORD_STRENGTH('Ad32weak$_@123');

在这里插入图片描述

规则说明:详情参看官网说明:

策略检查规则
0 or LOWLength(满足长度要求)
1 or MEDIUMLength; numeric, lowercase/uppercase, and special characters
2 or STRONGLength; numeric, lowercase/uppercase, and special characters; dictionary file

创建触发器:每次插入或更新用户密码时检查密码复杂度

CREATE TRIGGER check_password_complexity
BEFORE INSERT ON users
FOR EACH ROW
BEGINDECLARE password_complexity_error VARCHAR(255) DEFAULT NULL;IF NEW.password REGEXP '^(?=.*[a-z])(?=.*[A-Z])(?=.*[0-9])(?=.*[!@#$%^&*]).{8,}$' = 0THENSET password_complexity_error = 'Password must contain at least one uppercase letter, one lowercase letter, one number, one special character, and have a minimum length of 8 characters.';END IF;IF password_complexity_error IS NOT NULL THENSIGNAL SQLSTATE '45000' SET MESSAGE_TEXT = password_complexity_error;END IF;
END;

说明:上述触发器使用正则表达式(regular expression)检查被插入的新密码(NEW.password)是否满足复杂度要求。正则表达式^(?=.[a-z])(?=.[A-Z])(?=.[0-9])(?=.[!@# %^&*]).{8,} 要求密码至少包含一个小写字母、一个大写字母、一个数字、一个特殊字符(!@#$%^&*),并且密码长度至少为8个字符。另,mysql 5.7 及之后版本的密码保存到 authentication_string 字段中不再使用password 字段。MySQL 8.0 在用户管理方面还增加了角色管理,默认的密码加密方式也做了调整,由之前的 SHA1 改为了 SHA2 ,不可逆 ,同时加上 MySQL 5.7 的禁用用户和用户过期的功能。

2.2 、是否启用ssl:

show variables like '%ssl%';

2.3、最小化权限配置

主要分为:用户管理权限、对象管理权限和SQL执行权限。最小化权限原则是指,只授权用户所必需的权限,并且要尽可能地限制其权限范围。

#创建只读用户
mysql> GRANT SELECT ON database_name.* TO 'OR_user'@'localhost' IDENTIFIED BY 'password';#去除删除权限,须用户重新登录后才能生效
mysql> REVOKE DROP ON database_name.* FROM 'dbadmin'@'localhost';
mysql> REVOKE SELECT,INSERT,UPDATE,DELETE ON mysql.* FROM 'dbadmin'@'localhost';#限制用户操作的表和字段
mysql> GRANT SELECT (name, age) ON rsms.user TO 'test'@'localhost' IDENTIFIED BY 'password';#创建一个名为“user_acl”的视图,只能查询名为“user”的表中“name”和“age”字段,可以使用以下命令:mysql> CREATE VIEW user_acl AS SELECT name,age FROM user;#验证
mysql> SHOW GRANTS FOR CURRENT_USER();
mysql> SHOW GRANTS FOR 'user'@'主机地址' ;
mysql> SELECT host,user,authentication_string,select_priv,insert_priv,drop_priv  
FROM mysql.user;

2.4、权限分级配置

权限分级原则是指,根据用户角色或职责的不同,对其进行权限分级管理,避免数据被未经授权的用户访问和操作。

#8.0中创建角色
mysql> CREATE ROLE 'role_name'[@'host_name'] [,'role_name'[@'host_name']]……
mysql> GRANT role [,role2,...] TO user [,user2,...];
mysql> REVOKE role FROM user;  #撤销用户的角色
#验证
mysql> SELECT CURRENT_ROLE();#激活角色,激活4个
mysql> SET DEFAULT ROLE ALL TO  
'admin'@'localhost',  
'read_user1'@'localhost',  
'read_user2'@'localhost',  
'rw_user1'@'localhost';#临时配置角色
mysql> SET PERSIST mandatory_roles = 'role1,role2@localhost,rw_user1@%'; #系统重启后仍然有效  
mysql> SET GLOBAL mandatory_roles = 'role1,role2@localhost,rw_user1@%'; #系统重启后失效
#写到配置文件里,固定
[mysqld]  
mandatory_roles='role1,role2@localhost,rw_user1@%'#验证
mysql> show variables like 'activate_all_roles_on_login';  #对所有角色永久激活
mysql> SET GLOBAL activate_all_roles_on_login=ON;
http://www.yayakq.cn/news/321174/

相关文章:

  • 网站空间怎么备份淘宝网站网页图片怎么做
  • 专业企业网站建设多少钱公司网站域名查询
  • 校园网站建设建议嘉兴本地推广网站
  • 企业网站建设的三种方式创立制作网站公司
  • 深圳市建设工程交易服务集宁网站建设SEO优化
  • 网站搭建服务免费全自动推广平台
  • 北辰正方建设集团有限公司网站wordpress极速主题
  • 做网站代理能赚钱吗网站网站代理怎么做的
  • 建网站的公司哪里好广州番禺区男科医院
  • 快速搭建网站 数据存储手机网站建设电话
  • 什么是搭建网站wordpress php设置
  • 韩韩良品只做性价比网站下载兰州网站建设q479185700惠
  • 短视频免费素材网站怎么不用wordpress
  • 有哪些网站可以做电子邀请函莱芜吧诚意带大家修车
  • 简单个人网站模板智邦国际erp系统登录
  • wordpress分类目录标题使用自定义河南seo网站多少钱
  • 廊坊网站seo做教程网站如何查用户搜索
  • 做翻译赚钱的网站好苏州网站设计公司
  • 广西北海市住房和建设厅网站长春小学网站建设
  • 接广告的网站怎么做百瑞网站建设
  • 襄阳做网站公司哪家好专业做网站建设的公司
  • 宁波网站建设多少钱一年php网站管理
  • 做网站能赚钱吗做网站15年
  • 建设工程合同包括三种关键词优化排名用什么软件比较好
  • 买东西的网站站长工具亚洲
  • 广西建设四库一平台网站企业网站建设需要做些什么
  • yy刷单做的那些网站app开发价格要多少钱
  • 网站建设好公司好企业品牌营销策略
  • 自己怎么做优惠卷网站厦门市城市建设档案馆网站
  • 平凉网站设计软件学校网站模板下载