如何建立存放用户名和密码的数据库表

如何建立存放用户名和密码的数据库表,第1张

create table UserThe(数据库表名)

( Id int IDENTITY (1, 1) NOT NULL ,

userID int , '会员ID自动递增,并是唯一的

username varchar(50), '会员名称50个字以内

attribute int DEFAULT 0, '属性默认值是设置0

Userpassword varchar(50), '这列是用户存放密码,建议用md5加密后保存,验证的时候用户输入的密码也加密后对比

UsTime DateTime DEFAULT GetDate(), '这个可以记录时间,默认为生成的时间

);

一般是存在一个properties或者xml文件中,作为配置文件。这样就方便管理,即使数据库的链接属性如地址、服务名、端口、用户名、密码什么的发生了变化,只要修改一下配置文件就可以了,很方便。

在企业管理器中的login中新建一个登录名,然后再在需要 *** 作的数据库的用户中新建一个用户,把这个用户关联到刚创建的登录名,然后针对这个用户设置权限即可,任何情况下不要把sa给别人。

问题补充:

把数据库的访问逻辑移至服务端,形成数据库访问层,客户端只需要处理返回的数据即可,程序耦合度降低了,这样不仅密码问题解决了,数据访问逻辑灵活度也提高了。

数据库的连接字符一般放在配置文件,方便维护。可以把连接字符串进行加密放入配置文件。当然别人也有可能通过尝试的方式来运算出你的加密密钥。 如果数据库密码都是你统一设置,那么这个就不容易被人破解

将用户的密码通过md5加密算法得到一串密文保存到数据库,输入密码同样用md5生成一串密文,如果在数据库中找到相同的密文则证明密码存在;

这样即使数据库被入侵用户的密码也是不可见的;

java 代码:

import javamathBigInteger;

import javasecurityMessageDigest;

import javasecurityNoSuchAlgorithmException;

public class MD5Utils {

/

使用md5的算法进行加密

@param plainText

加密原文

@return 加密密文

/

public static String md5(String plainText) {

byte[] secretBytes = null;

try {

secretBytes = MessageDigestgetInstance("md5")digest(

plainTextgetBytes());

} catch (NoSuchAlgorithmException e) {

throw new RuntimeException("没有md5这个算法!");

}

return new BigInteger(1, secretBytes)toString(16);

}

}

用nvarchar

首先是字符串

所以

是char和nvarchar

但是char会用空格不足长度,也就是说输入是test,实际存储的是test+6个空格(以10位为例),这样以后密码校对的时候会死活校对不上

但nvarchar是输入多少就是多少

当然了,你要用MD5加密。长度可以设32

1.

大前提是你已经安装好db2服务器和mysql服务器,现在只是借用navicat

for

mysql这个软件把db2中的数据库转换到mysql中去。

2.

首先利用这个软件建立一个连接,连接到mysql服务器上。

这里的连接名,自己随便取。主机名或ip地址填写你的mysql服务器地址自己机器就填localhost就行,端口一般都是3306,用户名一般都为root

密码是你mysql服务器的密码。

3

完成后,双击连接名,打开连接,右击连接名,选择新建数据库。数据名自己起,字符集选择与数据库相符的,或者不选默认就行,排序规则不用选。

4.

建好数据库,双击数据库名,打开数据库,右击数据库名中的表,选择导入向导,打开界面后选择odbc,然后下一步。

5

按照下图所示选择,会d出一个窗口。

6

选择ibm

ole

db

provider

for

db2

db2copy1,点击下一步。

7

d出数据连接属性对话框,指定好db2数据源,如果你db2里已经建好,这里会有显示,登录信息就是你的db2数据库的登录信息。

8

说到这里基本步骤完成,下面的就一直点下一步,或者确定就ok了。

现在就可以将db2的数据库转换到mysql中了。

php将密码存入数据库,可以分内常见的4种方式:

1、直接md5加密存到到数据库

2、md5两次存到数据库

3、对需要加密的字符串和一个常量 进行混淆加密

4、生成一个随机的变量存到数据库中,然后对需要加密的字符串和这个随机变量加密

<php

$str="admin"; //需要加密的字符串

$str2="php";  //增加一个常量混淆 

$pass1=md5($str);

$pass2=md5(md5($str));

$pass3=md5($str$str2);

echo $pass1"<br>"$pass2"<br>"$pass3;

>

输出:

第四种

$str="admin"; //需要加密的字符串

$encrypt=$row['encrypt']; // 生成的 随机加密字符串 存到数据库中

$pass4=md5($str$encrypt);

//  8db2ec7e9636f124e56f7eb4d7b7cc7e

以上就是关于如何建立存放用户名和密码的数据库表全部的内容,包括:如何建立存放用户名和密码的数据库表、jsp 数据库用户名和密码是如何保存的、如何 保存 sql server 的登录密码等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/sjk/9813124.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-02
下一篇2023-05-02

发表评论

登录后才能评论

评论列表(0条)

    保存