CN102426592B - 一种基于动态口令的数据库初始化方法 - Google Patents
一种基于动态口令的数据库初始化方法 Download PDFInfo
- Publication number
- CN102426592B CN102426592B CN201110338658.XA CN201110338658A CN102426592B CN 102426592 B CN102426592 B CN 102426592B CN 201110338658 A CN201110338658 A CN 201110338658A CN 102426592 B CN102426592 B CN 102426592B
- Authority
- CN
- China
- Prior art keywords
- key
- minutes
- database
- current
- data base
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Landscapes
- Storage Device Security (AREA)
Abstract
本发明提供了一种基于动态口令的数据库初始化方法,至少包含如下步骤:当数据库初始化程序调用数据库服务进程的维护模式时,在数据库初始化过程中和数据库服务器中分别生成基于指定时间的密钥;将所述数据库初始化程序中生成的密钥传输至所述数据库服务器中与所述数据库服务器中生成的密钥进行比对验证。本数据库初始化方法在调用数据库维护模式时增加了身份鉴别功能,进而对数据库初始化提供了安全保障。
Description
技术领域
本发明涉及一种基于动态口令的数据库初始化方法,属于数据库安全管理技术领域。
背景技术
在现有技术中,用户进入数据库维护模式时,通常是不需要进行身份鉴别的。然而,当数据库服务器进程进入维护模式时如果不对用户进行身份鉴别,在维护模式下可以直接进入服务器执行SQL语句,就有可能会给数据库造成一定的危险。
因此,当数据库初始化程序通过启动数据库服务器进程的维护模式来建立***表、数据库时,有必要对数据库维护模式的运行状态通过动态口令进行检验,以确保数据库的安全。
邵子博等人在论文《一种数据库安全访问控制***的设计与实现》(刊载于《2006中国控制与决策学术年会论文集》)中,提出为了防止应用***和数据库操作员非法访问数据库,破坏数据库***的安全,设计并实现了数据库安全访问控制***。该***能够认证访问数据库的应用***,防止应用非授权访问;它从技术和管理策略两方面着手监督控制DBA的操作,大大降低了越权访问的可能性,从而提高了数据库***的安全性。
发明内容
本发明所要解决的技术问题在于提供一种基于动态口令的数据库初始化方法。该方法在调用数据库维护模式时增加了身份鉴别功能,进而对数据库初始化提供了安全保障。
为实现上述的发明目的,本发明采用下述的技术方案:
一种基于动态口令的数据库初始化方法,至少包含如下步骤:
当数据库初始化程序调用数据库服务进程的维护模式时,在数据库初始化过程中和数据库服务器中分别生成基于指定时间的密钥;
将所述数据库初始化程序中生成的密钥传输至所述数据库服务器中与所述数据库服务器中生成的密钥进行比对验证。
其中,所述当数据库初始化程序调用数据库服务进程的维护模式时,在数据库初始化过程中和数据库服务器中分别生成基于指定时间的密钥,具体包含:
所述数据库初始化程序创建一个管道,用于在调用数据库服务进程的维护模式时通过所述管道将密钥传输至所述数据库服务器;
所述数据库初始化程序获取当前时间并精确到分钟,以当前分钟数作为至少一部分参数在数据库初始化过程中生成第一密钥,每次调用数据库服务进程的维护模式时,实时更新当前分钟数并将生成的所述第一密钥写入所述管道中;以及
所述数据库服务器获取当前时间并精确到分钟,以当前分钟数和前一分钟数分别作为至少一部分参数生成第二密钥和第三密钥。
所述以当前分钟数作为至少一部分参数在数据库初始化过程中生成第一密钥的方法为:将当前分钟数格式化为字符串后通过MD5(Message Digest Algorithm 5,消息摘要算法第5版)算法形成摘要信息作为第一密钥。
所述以当前分钟数和前一分钟数分别作为至少一部分参数生成第二密钥和第三密钥的方法为:将所述当前分钟数和前一分钟数格式化为字符串后,分别通过MD5算法形成摘要信息作为第二密钥和第三密钥。
所述以当前分钟数作为至少一部分参数在数据库初始化过程中生成第一密钥的方法为:将当前分钟数格式化为字符串后结合数据版本号通过MD5算法形成摘要信息作为第一密钥。
所述以当前分钟数和前一分钟数分别作为至少一部分参数生成第二密钥和第三密钥的方法为:将所述当前分钟数和前一分钟数格式化为字符串后,结合数据版本号分别通过MD5算法形成摘要信息作为第二密钥和第三密钥。
所述数据库服务器将所述第一密钥分别与所述第二密钥和所述第三密钥比对验证,如通过验证则数据库服务器的维护模式正常启用,未通过验证则数据库服务器退出运行。
所述数据库初始化程序获取当前时间通过API(ApplicationProgramming Interface,应用程序编程接口)进行。
与现有技术相比,本发明提供了一种通过动态口令校验达到安全使用数据库的方法,解决了现有技术中数据库中的维护模式不对数据库使用者的身份进行鉴别导致的安全隐患,在使用维护模式对数据库进行初始化过程中,提供了一种对用户的身份进行验证的方案,通过建立动态口令技术的方式,确保了数据库的安全稳定。
附图说明
下面结合附图及具体实例对本发明做进一步详细地说明。
图1为本发明的基于动态口令的数据库初始化方法的流程图;
图2为本发明中数据库初始化程序的流程图;
图3为本发明中将数据库初始化程序中生成的密钥与数据库服务器中生成的密钥进行比对验证的流程图;
图4为本发明的具体实施方式中生成密钥的方法流程图。
具体实施方式
图1所示为本发明所提供的基于动态口令的数据库初始化方法的流程图。该数据库初始化方法,至少包含如下步骤:
步骤S101,当数据库初始化程序调用数据库服务进程的维护模式时,在数据库初始化过程中和数据库服务器中分别生成基于指定时间的密钥;
步骤S102,将所述数据库初始化程序中生成的密钥传输至所述数据库服务器中与所述数据库服务器中生成的密钥进行比对验证。
具体而言,参见图2所示,为本发明中数据库初始化程序的流程图。当数据库初始化程序调用数据库服务进程的维护模式时,在数据库初始化过程中生成基于指定时间的密钥,具体包含:
步骤S201,数据库初始化程序创建一个管道,用于在调用数据库服务进程的维护模式时通过所述管道将密钥传输至所述数据库服务器;
步骤S202,生成第一密钥写入管道中,具体而言,所述数据库初始化程序获取当前时间并精确到分钟,以当前分钟数作为至少一部分参数在数据库初始化过程中生成第一密钥,每次调用数据库服务进程的维护模式时,实时更新当前分钟数并将生成的所述第一密钥写入所述管道中;
步骤S203,调用数据库服务进程;
步骤S204,等待数据库服务进程结束。
如图3所示,为本发明中将数据库初始化程序中生成的密钥与数据库服务器中生成的密钥进行比对验证的流程图;具体包含:
步骤S301,获取第一密钥信息;
步骤S302,生成第二、第三密钥信息;
步骤S303,进行比对。
其中,数据库服务器获取当前时间并精确到分钟,以当前分钟数和前一分钟数分别作为至少一部分参数生成第二密钥和第三密钥。数据库服务器将获取的第一密钥分别与所述第二密钥和所述第三密钥比对验证,如通过验证则数据库服务器的维护模式正常启用,未通过验证则数据库服务器退出运行。
参见图4所示,为本发明的具体实施方式中生成密钥的方法流程图。具体包含:
步骤S401,获取当前时间;
步骤S402,根据时间获取分钟数;
步骤S403,格式化分钟数成为字符串;
步骤S404,通过MD5算法形成摘要信息作为密钥。
具体而言,将当前分钟数格式化为字符串后通过MD5算法形成摘要信息作为第一密钥;将所述当前分钟数和前一分钟数格式化为字符串后,分别通过MD5算法形成摘要信息作为第二密钥和第三密钥。
或者,将当前分钟数格式化为字符串后结合数据版本号通过MD5算法形成摘要信息作为第一密钥;将所述当前分钟数和前一分钟数格式化为字符串后,结合数据版本号分别通过MD5算法形成摘要信息作为第二密钥和第三密钥。
然后,数据库服务器将所述第一密钥分别与所述第二密钥和所述第三密钥比对验证。所述数据库初始化程序获取当前时间可以通过API进行。
本领域内的技术人员应明白,本发明的实施例可提供为方法、***、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器和光学存储器等)上实施的计算机程序产品的形式。
以上对本发明所提供的基于动态口令的数据库初始化方法进行了详细的说明。对本领域的技术人员而言,在不背离本发明实质精神的前提下对它所做的任何显而易见的改动,都将构成对本发明专利权的侵犯,将承担相应的法律责任。
Claims (7)
1.一种基于动态口令的数据库初始化方法,其特征在于,至少包含如下步骤:
当数据库初始化程序调用数据库服务进程的维护模式时,在数据库初始化过程中和数据库服务器中分别生成基于指定时间的密钥;其中,
所述数据库初始化程序创建一个管道,用于在调用数据库服务进程的维护模式时通过所述管道将密钥传输至所述数据库服务器;
所述数据库初始化程序获取当前时间并精确到分钟,以当前分钟数作为至少一部分参数在数据库初始化过程中生成第一密钥,每次调用数据库服务进程的维护模式时,实时更新当前分钟数并将生成的所述第一密钥写入所述管道中;以及
所述数据库服务器获取当前时间并精确到分钟,以当前分钟数和前一分钟数分别作为至少一部分参数生成第二密钥和第三密钥;
将所述数据库初始化程序中生成的密钥传输至所述数据库服务器中与所述数据库服务器中生成的密钥进行比对验证。
2.如权利要求1所述的基于动态口令的数据库初始化方法,其特征在于,所述以当前分钟数作为至少一部分参数在数据库初始化过程中生成第一密钥的方法为:将当前分钟数格式化为字符串后通过MD5算法形成摘要信息作为第一密钥。
3.如权利要求2所述的基于动态口令的数据库初始化方法,其特征在于,所述以当前分钟数和前一分钟数分别作为至少一部分参数生成第二密钥和第三密钥的方法为:将所述当前分钟数和前一分钟数格式化为字符串后,分别通过MD5算法形成摘要信息作为第二密钥和第三密钥。
4.如权利要求1所述的基于动态口令的数据库初始化方法,其特征在于,所述以当前分钟数作为至少一部分参数在数据库初始化过程中生成第一密钥的方法为:将当前分钟数格式化为字符串后结合数据版本号通过MD5算法形成摘要信息作为第一密钥。
5.如权利要求4所述的基于动态口令的数据库初始化方法,其特征在于,所述以当前分钟数和前一分钟数分别作为至少一部分参数生成第二密钥和第三密钥的方法为:将所述当前分钟数和前一分钟数格式化为字符串后,结合数据版本号分别通过MD5算法形成摘要信息作为第二密钥和第三密钥。
6.如权利要求1所述的基于动态口令的数据库初始化方法,其特征在于,所述数据库服务器将所述第一密钥分别与所述第二密钥和所述第三密钥比对验证,如通过验证则数据库服务器的维护模式正常启用,未通过验证则数据库服务器退出运行。
7.如权利要求1所述的基于动态口令的数据库初始化方法,其特征在于,所述数据库初始化程序获取当前时间通过应用程序编程接口进行。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110338658.XA CN102426592B (zh) | 2011-10-31 | 2011-10-31 | 一种基于动态口令的数据库初始化方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110338658.XA CN102426592B (zh) | 2011-10-31 | 2011-10-31 | 一种基于动态口令的数据库初始化方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102426592A CN102426592A (zh) | 2012-04-25 |
CN102426592B true CN102426592B (zh) | 2014-10-08 |
Family
ID=45960572
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201110338658.XA Active CN102426592B (zh) | 2011-10-31 | 2011-10-31 | 一种基于动态口令的数据库初始化方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102426592B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106021497B (zh) * | 2016-05-23 | 2021-06-08 | ***股份有限公司 | 数据库访问口令管理方法 |
CN106453300A (zh) * | 2016-09-30 | 2017-02-22 | 北京悦畅科技有限公司 | 一种数据加解密方法、设备和数据传输*** |
CN108848089B (zh) * | 2018-06-13 | 2020-09-01 | 江苏恒宝智能***技术有限公司 | 一种数据加密方法及数据传输*** |
CN110290146B (zh) * | 2019-07-03 | 2021-10-08 | 北京达佳互联信息技术有限公司 | 分享口令的生成方法、装置、服务器及存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1731723A (zh) * | 2005-08-19 | 2006-02-08 | 上海林果科技有限公司 | 电子/手机令牌动态口令认证*** |
CN101030242A (zh) * | 2007-02-12 | 2007-09-05 | 深圳市迈科龙电子有限公司 | 一种控制数据库安全访问的方法 |
US7581243B2 (en) * | 2004-01-30 | 2009-08-25 | Canon Kabushiki Kaisha | Secure communication method, terminal device, authentication server, computer program, and computer-readable recording medium |
-
2011
- 2011-10-31 CN CN201110338658.XA patent/CN102426592B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7581243B2 (en) * | 2004-01-30 | 2009-08-25 | Canon Kabushiki Kaisha | Secure communication method, terminal device, authentication server, computer program, and computer-readable recording medium |
CN1731723A (zh) * | 2005-08-19 | 2006-02-08 | 上海林果科技有限公司 | 电子/手机令牌动态口令认证*** |
CN101030242A (zh) * | 2007-02-12 | 2007-09-05 | 深圳市迈科龙电子有限公司 | 一种控制数据库安全访问的方法 |
Also Published As
Publication number | Publication date |
---|---|
CN102426592A (zh) | 2012-04-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109889503B (zh) | 基于区块链的身份管理方法、电子装置及存储介质 | |
EP3123692B1 (en) | Techniques to operate a service with machine generated authentication tokens | |
CN111082940B (zh) | 物联网设备控制方法、装置及计算设备、存储介质 | |
CN104104672B (zh) | 基于身份认证建立动态授权码的方法 | |
CN104021333A (zh) | 移动安全表袋 | |
CN104794385A (zh) | 一种信息验证方法及装置 | |
CN107743115B (zh) | 一种终端应用的身份认证方法、装置和*** | |
WO2015142965A1 (en) | Techniques to provide network security through just-in-time provisioned accounts | |
CN103561006B (zh) | 基于安卓***的应用认证方法和装置及应用认证服务器 | |
CN102281138B (zh) | 一种提高验证码安全性的方法和*** | |
KR20160110276A (ko) | 다이나믹 보안모듈 생성방법 및 생성장치 | |
CN104123497A (zh) | 一种防御sql注入的方法、装置及*** | |
CN108881243B (zh) | 基于CPK的Linux操作***登录认证方法、设备、终端及服务器 | |
CN105243314A (zh) | 一种基于USB-key的安全***及其使用方法 | |
CN102426592B (zh) | 一种基于动态口令的数据库初始化方法 | |
CN104104671B (zh) | 建立企业法人账户的统一动态授权码*** | |
CN103117862A (zh) | 用openssl的X.509数字证书验证Java证书的方法 | |
CN105337978A (zh) | 一种基于安全服务阻断的切面权限验证方法及*** | |
CN102983969B (zh) | 一种操作***的安全登录***及安全登录方法 | |
CN106933605A (zh) | 一种智能的进程识别控制方法和*** | |
CN103559430B (zh) | 基于安卓***的应用账号管理方法和装置 | |
CN115021995B (zh) | 多渠道登录方法、装置、设备及存储介质 | |
CN102495811B (zh) | 一种许可证生成及验证方法和一种存储设备 | |
CN111770100B (zh) | 校验外部设备安全接入物联网终端的方法及其*** | |
CN110661789B (zh) | 地址重置方法、装置、设备及计算机可读存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |