(improvement)(login) encrypt password (#1081) (#1116)

This commit is contained in:
zhaodongsheng
2024-06-09 08:16:45 +08:00
committed by GitHub
parent dcb7f21241
commit 5bc88b78a9
15 changed files with 289 additions and 95 deletions

View File

@@ -1,9 +1,9 @@
-- sample user
MERGE INTO s2_user (id, `name`, password, display_name, email, is_admin) values (1, 'admin','admin','admin','admin@xx.com', 1);
MERGE INTO s2_user (id, `name`, password, display_name, email) values (2, 'jack','123456','jack','jack@xx.com');
MERGE INTO s2_user (id, `name`, password, display_name, email) values (3, 'tom','123456','tom','tom@xx.com');
MERGE INTO s2_user (id, `name`, password, display_name, email, is_admin) values (4, 'lucy','123456','lucy','lucy@xx.com', 1);
MERGE INTO s2_user (id, `name`, password, display_name, email) values (5, 'alice','123456','alice','alice@xx.com');
MERGE INTO s2_user (id, `name`, password, salt, display_name, email, is_admin) values (1, 'admin11','c3VwZXJzb25pY0BiaWNvbQIY4hJ2TJ0bM4aJLIAEreUBTMlveZUDOTINOon+hs59pSoijg6AoB6m3khO/6lX/g==','jGl25bVBBBW96Qi9Te4V3w==','admin11','admin@xx.com', 1);
MERGE INTO s2_user (id, `name`, password, salt, display_name, email) values (2, 'jack','123456','123456','jack','jack@xx.com');
MERGE INTO s2_user (id, `name`, password, salt, display_name, email) values (3, 'tom','123456','123456','tom','tom@xx.com');
MERGE INTO s2_user (id, `name`, password, salt, display_name, email, is_admin) values (4, 'lucy','123456','123456','lucy','lucy@xx.com', 1);
MERGE INTO s2_user (id, `name`, password, salt, display_name, email) values (5, 'alice','123456','123456','alice','alice@xx.com');
MERGE INTO s2_available_date_info(`id`,`item_id` ,`type` ,`date_format` ,`start_date` ,`end_date` ,`unavailable_date` ,`created_at` ,`created_by` ,`updated_at` ,`updated_by` )
values (1 , 1, 'dimension', 'yyyy-MM-dd', DATEADD('DAY', -28, CURRENT_DATE()), DATEADD('DAY', -1, CURRENT_DATE()), '[]', '2023-06-01', 'admin', '2023-06-01', 'admin');

View File

@@ -1,6 +1,6 @@
-- sample user
insert into s2_user (id, `name`, password, display_name, email, is_admin) values (1, 'admin','admin','admin','admin@xx.com', 1);
insert into s2_user (id, `name`, password, display_name, email, is_admin) values (4, 'lucy','123456','lucy','lucy@xx.com', 1);
insert into s2_user (id, `name`, password, salt, display_name, email, is_admin) values (1, 'admin','admin','admin','admin@xx.com', 1);
insert into s2_user (id, `name`, password, salt, display_name, email, is_admin) values (4, 'lucy','123456','lucy','lucy@xx.com', 1);
INSERT INTO s2_available_date_info (`item_id`, `type`, `date_format`, `start_date`, `end_date`, `unavailable_date`, `created_at`, `created_by`, `updated_at`, `updated_by`)

View File

@@ -88,7 +88,8 @@ create table IF NOT EXISTS s2_user
id INT AUTO_INCREMENT,
name varchar(100) not null,
display_name varchar(100) null,
password varchar(100) null,
password varchar(256) null,
salt varchar(256) NULL,
email varchar(100) null,
is_admin INT null,
PRIMARY KEY (`id`)

View File

@@ -426,7 +426,8 @@ create table s2_user
id int(11) NOT NULL AUTO_INCREMENT,
name varchar(100) not null,
display_name varchar(100) null,
password varchar(100) null,
password varchar(256) null,
salt varchar(256) DEFAULT NULL COMMENT 'md5密码盐',
email varchar(100) null,
is_admin int(11) null,
PRIMARY KEY (`id`)

View File

@@ -0,0 +1,35 @@
package com.tencent.supersonic.util;
import com.tencent.supersonic.auth.authentication.utils.AESEncryptionUtil;
public class AESEncryptionUtilTest {
public static boolean areByteArraysEqual(byte[] array1, byte[] array2) {
if (array1.length != array2.length) {
return false;
}
for (int i = 0; i < array1.length; i++) {
if (array1[i] != array2[i]) {
return false;
}
}
return true;
}
public static void main(String[] args) throws Exception {
byte[] salt = AESEncryptionUtil.generateSalt("zhangsan1234");
System.out.println("salt: " + salt);
String encodeSalt = AESEncryptionUtil.getStringFromBytes(salt);
System.out.println("encodeSalt: " + encodeSalt);
byte[] decodeSalt = AESEncryptionUtil.getBytesFromString(encodeSalt);
System.out.println("decodeSalt: " + decodeSalt);
System.out.println("areByteArraysEqual: " + areByteArraysEqual(salt, decodeSalt));
String password = AESEncryptionUtil.encrypt("zhangsan1234", salt);
System.out.println("password: " + password);
String password2 = AESEncryptionUtil.encrypt("zhangsan1234", decodeSalt);
System.out.println("password2: " + password2);
}
}