在Access数据库中实现密码管理

2016-02-19 20:43 2 1 收藏

今天图老师小编要跟大家分享在Access数据库中实现密码管理,精心挑选的过程简单易学,喜欢的朋友一起来学习吧!

【 tulaoshi.com - 编程语言 】

大家都知道,数据库的安全性是很重要的,它直接影响到数据库的广泛应用。用户可以采用任意一种方法来保护数据库应用程序,也可以将几种方法结合起来使用。利用Access数据库自身提供的加密功能及其他保护方法是很容易的,我就不多说了。在Access数据库中,嵌入了一种很强的数据库操作语言——Visual Basic语言,所以可以采用Visual Basic编写程序,来实现一些复杂的功能。下面将介绍如何在Visual Basic程序中实现加密功能,以确保数据的安全性。

对于一些公司来说,职员的工资管理是一个不大不小的问题。有时,领导需要了解一段时间内每个职员的收入如何,以便掌握各项奖金的发放情况。为此,我设计了一个“工资管理”数据库,可以按时间进行查询,并根据所选的工资类别进行统计。为了防止其他人查看此数据库,我采用“独占”方式给数据库设置了密码。这种方法也有一定的局限性,如果用户恰巧提供了正确的数据库密码,该方法就不能控制用户对数据库进行操作。

为了进一步防止职员查看工资的统计结果(即有些奖金并不是公开的,除领导以外的其他人不应该知道工资数目),我又创建了一个密码表,设置好密码,记住并将其隐藏起来(先选中“密码表”,再单击“窗口”菜单中的“隐藏”命令,即可把此表隐藏起来)。然后,在“职工工资对话框”窗体中,添加“密码”文本框,并在“预览”及“打印”的事件过程中加入下列语句:

DoCmd.ApplyFilter , "密码 = Forms!

职工工资对话框!PassText"

If Not IsNull([密码]) Then

/*其他代码*/

(本文来源于图老师网站,更多请访问https://www.tulaoshi.com/bianchengyuyan/)

Else

MsgBox "请输入正确的密码!"

PassText.SetFocus

End If

/*其他代码*/

(本文来源于图老师网站,更多请访问https://www.tulaoshi.com/bianchengyuyan/)

这样,就实现了双重加密功能。即使用户能进入数据库,如果第二次没有提供正确的密码,他也不能预览和打印一定时间范围的统计结果。这就进一步限制了用户的非授权访问。

为了提高数据库的安全性,每隔一段时间都应更改密码。为此,在“职工工资对话框”窗体中,我又添加了一个“更改密码”子窗体,在此窗体中加入下列代码,即可随时更改密码:

(本文来源于图老师网站,更多请访问https://www.tulaoshi.com/bianchengyuyan/)

Private Sub确定_Click()

On Error GoTo Err_确定_Click

DoCmd.ApplyFilter , "密码

= Forms!更改密码!Text1"

If IsNull([密码]) Then

MsgBox ("密码不正确,请再输入一次")

Text1.SetFocus

GoTo Exit_确定_Click:

End If

If Text3.Value $#@60; $#@62; Text2.Va Then

Text3.SetFocus

MsgBox ("请输入正确的确认密码")

Else:

密码 = Text3.Value

DoCmd.Close

End If

Exit_确定_Click:

Exit Sub

Err_确定_Click:

MsgBox Err.Description

Resume Exit_确定_Click

End Sub

更改密码后,应记住此密码,以备以后使用。

设计好程序,并将有关代码隐藏起来(与隐藏“表”的方法相同),以防其他人修改或偷看。这里介绍的方法只是在程序中实现加密功能的一个小技巧,在其他数据库管理中,也可采用此方法进行加密。也许存在更为简洁的方法,有待大家在编程过程中发掘出来并互相交流。

来源:https://www.tulaoshi.com/n/20160219/1624341.html

延伸阅读
大家都知道,数据库的安全性是很重要的,它直接影响到数据库的广泛应用。用户可以采用任意一种方法来保护数据库应用程序,也可以将几种方法结合起来使用。利用Access数据库自身提供的加密功能及其他保护方法是很容易的,我就不多说了。在Access数据库中,嵌入了一种很强的数据库操作语言——VisualBasic语言,所以可以采用VisualBasic编写...
标签: ASP
  在编程中,经常需要使用事务。所谓事务,就是一系列必须都成功的操作,只要有一步操作失败,所有其他的步骤也必须撤销。比如用ASP开发一个网络硬盘系统,其用户注册部分要做的事有: 将用户信息记入数据库 为用户开个文件夹用于存储 初始化用户操作日志 这三步必须使用事务,否则万一磁盘操作失败,而没有撤...
标签: Web开发
如何防止Access数据库下载是一个很老的话题了,网上的讨论也比较多。在这里只是探讨ASP.NET下防止Access数据库被下载的方法,有些是对以前方法的总结,部分是自己原创。其中可能有不完善甚至不正确的地方,欢迎大家指出,一同进步。          目前的解决方案主要有以下几种: 1.  ...
    当你初次在机器上安装完MySQL时,你可以匿名进行访问数据库或者以不带口令的root身份进入数据库。假如你是一个管理员, 你还要进行一些用户的建立及授权,这又涉及到设置密码的问题.下面我们就讨论一下如何设置密码: 首先我们应该知道Mysql数据库中的口令存储必须用password()函数加密它.因为在user表中是以加密形式存储...
一、密码式 给数据库起一个随机复杂的名称,避免被猜到被下载,这种方式在以前很流行,因为大家都对自己的代码很有自信。但随着错误提示对数据库地址的泄露导致数据库被非法下载,这种方式也就越来越少人用了。 二、"#"式 在数据库名称里加上#号,从URL上请求时#是请求地址和请求参数的一个分隔字符,如果知道了数据库名...

经验教程

940

收藏

47
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部