数据库应用系统用户权限设置及用户跟踪程序的设计方法
- 格式:pdf
- 大小:183.74 KB
- 文档页数:4
数据库权限设计方案数据库权限设计方案是指对数据库中的数据和操作进行权限控制的方案。
在设计数据库权限时,应考虑到安全性和稳定性两个方面。
1. 安全性方面:在设计数据库权限时,应采取以下措施来保障数据的安全性。
- 根据用户的角色和职责,进行权限分级。
将用户分为超级管理员、普通管理员和普通用户等级,不同等级的用户拥有不同的权限。
- 根据不同等级的用户,设定相应的数据访问权限。
超级管理员具有最高权限,可以对数据库中的所有数据进行增删改查操作;普通管理员可以对部分数据进行增删改操作;普通用户只能进行查询操作。
- 对于一些敏感数据,可以设定只有特定的角色才能访问,如个人隐私信息等。
- 定期对数据库进行备份,以防止数据丢失和恢复误操作。
同时,对数据库的备份文件进行权限控制,确保只有授权的人可以访问和恢复数据。
2. 稳定性方面:在设计数据库权限时,应采取以下措施来保障数据库的稳定性。
- 限制数据库的连接数和并发操作数,避免因为过多的连接和操作导致数据库负载过高,从而影响数据库的稳定性和性能。
- 对于一些危险的操作,如删除表、删除数据库等,只允许特定的角色进行操作,以防止误操作导致的数据丢失或损坏。
- 设计合理的操作日志和审计日志功能,记录用户的操作和权限变更历史,方便追踪和排查问题。
- 定期进行数据库性能和安全的巡检,发现潜在问题并及时处理。
总之,数据库权限设计方案应综合考虑安全性和稳定性两个方面。
在安全性方面,应根据用户的角色和职责进行权限分级,并设定相应的数据访问权限;在稳定性方面,应限制数据库的连接数和并发操作数,防止危险操作,记录操作和权限变更的日志,以及定期进行巡检。
只有综合考虑到这些方面,才能设计出功能完善、安全可靠、稳定性良好的数据库权限方案。
数据库系统用户和权限管理制度1. 简介数据库系统用户和权限管理制度是为了维护数据库系统的安全性和数据的完整性而实施的一系列规定和措施。
通过合理的用户和权限管理,可以确保只有授权人员能够访问和操作数据库系统,从而防止信息泄露和误操作。
2. 用户管理2.1 用户注册- 所有需要访问数据库系统的人员都必须进行用户注册。
- 用户注册需要提供个人信息和相关证明材料,以便进行身份验证。
- 注册信息应包括姓名、工作单位、联系方式等必要信息。
2.2 用户权限分类数据库系统中的用户权限需要进行分类管理,根据不同的需求和职责,为用户分配相应的权限级别。
常见的权限分类包括:- 系统管理员:拥有最高权限,负责数据库系统的维护、备份和安全管理。
- 数据管理员:负责数据库的管理和维护,包括数据备份、恢复和性能优化等。
- 应用管理员:负责数据库应用程序的开发和维护,设置用户界面和数据输入输出等。
- 普通用户:只能进行数据的查询和部分操作,无法修改和删除重要数据。
2.3 用户权限审批- 用户申请权限需要经过上级审批,由相应的管理人员进行审核。
- 审批人员应根据申请人的工作职责和实际需要,合理判断并决定是否授权。
- 审批记录应进行归档存储,以备后续查询和审计。
3. 权限管理3.1 角色权限分配- 根据用户的职责和权限分类,将权限划分为不同的角色。
- 每个角色拥有特定的权限,可以对数据库中的不同对象进行操作。
- 角色的权限分配应根据实际需求和安全原则进行合理设置。
3.2 隐私和敏感信息保护- 敏感信息和个人隐私数据应进行限制性访问,只有特定的人员才能查看和操作。
- 合理设置数据字段的权限,限制用户对敏感信息的修改和删除操作。
- 对敏感信息的访问和操作应进行日志记录,便于事后审计和追踪。
3.3 定期权限审计- 定期对用户权限进行审计,确保权限的合理性和准确性。
- 需要对过期或不再需要的权限及时进行收回和注销。
- 审计结果应进行记录和整理,以备后续查询和需求分析。
数据库权限设计方案概述数据库是一个关键的信息系统组成部分,对于保护数据的机密性、完整性和可用性至关重要。
在现代应用中,数据库的权限控制是确保只有授权用户可以访问和操作数据的重要方面之一。
本文档旨在提供一个数据库权限设计方案,以确保只有合适的用户能够访问和操作数据库。
目标和原则目标•限制对数据库的非授权访问•分配合适的权限给授权用户•简化权限管理和维护流程原则•最小权限原则:给予用户的权限应尽可能少,只包含其工作所需的最小权限。
这样可以减少意外数据泄露或不当操作的风险。
•隔离原则:将用户分组并给予特定组的权限,从而限制一组用户对其他组用户的访问。
•审计原则:记录和监控用户对数据库的访问和操作,以便及时发现和处理异常行为。
•合理性原则:按照工作职能和数据需求来分配用户的权限,确保权限的合理使用和高效管理。
权限设计数据库角色在权限设计中,可以使用角色来管理和分配权限。
数据库角色是一个逻辑组,可以包含一组权限和用户。
这样用户只需要分配到适当的角色即可获得相应的权限。
常见的数据库角色包括:•超级用户角色:拥有完全的数据库操作权限,包括创建、删除、修改和查询数据库对象、用户和角色等。
•管理员角色:负责管理数据库的日常操作,包括备份和恢复、性能优化等。
•开发者角色:负责开发和维护数据库应用程序,具有对数据库对象和数据进行查询和修改的权限。
•数据分析师角色:负责对数据库中的数据进行分析和报告,具有读取和汇总数据的权限。
根据实际需求,可以创建更多的角色,并根据角色的权限需求分配相应的权限。
权限分配在数据库中,权限可以分为两种类型:对象级权限和系统级权限。
对象级权限对象级权限控制用户对特定数据库对象(如表、视图、存储过程等)的访问和操作权限。
常见的对象级权限包括:•SELECT:允许用户查询数据。
•INSERT:允许用户向表中插入新数据。
•UPDATE:允许用户修改表中的现有数据。
•DELETE:允许用户删除表中的数据。
数据库用户管理和权限管理1. 引言在数据库系统中,用户管理和权限管理是非常重要的功能。
通过用户管理,可以创建、修改和删除数据库用户,并为其分配相应的权限;通过权限管理,可以控制用户对数据库中数据和对象的访问和操作。
本文将介绍数据库用户管理和权限管理的基本概念、操作方法以及相关注意事项。
2. 数据库用户管理2.1 用户概念在数据库系统中,一个用户代表一个具有一定身份和权限的操作者。
每个用户都有自己的用户名和密码用于登录数据库系统。
2.2 用户创建创建新用户是管理员对数据库进行用户管理的第一步。
在大多数数据库系统中,可以使用以下语句来创建新用户:CREATE USER username IDENTIFIED BY password;其中,username为要创建的用户名,password为该用户名对应的密码。
2.3 用户修改在某些情况下,需要修改已存在的用户信息。
例如,当需要更改用户名或密码时,可以使用以下语句来修改现有用户:ALTER USER username IDENTIFIED BY new_password;2.4 用户删除当某个用户不再需要访问数据库时,可以使用以下语句将其从数据库中删除:DROP USER username;需要注意的是,在执行删除操作之前,请确保该用户已经没有任何重要数据或对象依赖于它。
3. 数据库权限管理3.1 权限概念数据库权限是指用户对数据库中数据和对象的访问和操作权力。
在数据库系统中,常见的权限包括SELECT、INSERT、UPDATE、DELETE等。
3.2 权限分配在数据库系统中,可以使用以下语句为用户分配权限:GRANT privilege ON object TO user;其中,privilege为要授予的权限,object为要授权的对象(如表、视图等),user为要授权给的用户。
3.3 权限撤销当某个用户不再需要某个权限时,可以使用以下语句将该权限从用户身上撤销:REVOKE privilege ON object FROM user;3.4 角色管理角色是一种特殊类型的用户,它可以扮演多个用户之间共享的角色,并且具有一组预定义的权限。
用户权限管理设计方案用户权限管理是一种重要的信息安全控制手段,能够确保系统中的用户只能访问其所需的数据和功能,防止未授权的操作和数据泄露。
本文将从用户权限的概念、设计原则、权限管理模型以及权限管理方案的实施等方面进行详细讨论。
一、用户权限的概念用户权限是指用户在系统中所具备的操作和访问资源的能力。
它涵盖了用户能够进行的操作类型、访问的资源范围以及操作的具体权限。
通过用户权限,系统可以灵活地控制用户在系统中的行为和操作,确保用户只能进行其所需的操作,从而提高系统的安全性。
二、用户权限管理的设计原则1.最小权限原则:用户应该被授予执行其工作所需的最小权限,以降低潜在的风险。
只有在确实需要的情况下,才应该授予更高级别的权限。
2.分级管理原则:根据用户的角色和职责将用户划分为不同的权限组,每个权限组仅拥有其所需的操作和资源访问权限。
3.统一权限管理原则:用户权限应该经过集中管理,避免出现分散和重复的权限设置,以减少管理成本和提高管理效率。
三、权限管理模型1. 自顶向下授权模型(Top-Down Authorization Model):该模型将权限从高层次向低层次授权,通过角色定义和角色授权的方式,将用户划分为不同的角色,每个角色拥有其所需的权限。
2. 基于角色的访问控制模型(Role-Based Access Control Model):该模型根据用户的角色将权限分配给用户,通过角色的添加、修改和删除来变更用户的权限。
3. 基于目录的访问控制模型(Directory-Based Access Control Model):该模型根据用户所在的组织结构进行权限管理,通过目录结构的设定和权限的继承来实现权限的控制和管理。
四、权限管理方案的实施1.确定用户的角色和职责:根据不同用户的角色和职责,将用户划分为不同的权限组。
同时,定义每个角色所需的操作和资源访问权限。
2.设计权限继承关系:通过权限的继承,将上层角色的权限传递给下层角色,以减少权限设置的重复。
数据库的用户权限管理与控制引言:随着信息时代的快速发展,数据的重要性也日益凸显。
无论是企业的内部数据还是个人隐私数据,都需要得到有效的保护。
数据库的用户权限管理与控制就是为了确保数据的安全性以及保护用户的隐私而存在的。
本文将从需求分析、权限控制策略、授权与认证等方面探讨数据库的用户权限管理与控制。
需求分析:用户权限管理与控制是根据用户的身份和角色来设置不同的操作权限,以保证用户对数据库的访问和操作仅限于其所需的范围。
在企业数据库中,通常涉及不同权限等级的用户,如超级管理员、管理员、普通用户等。
因此,确立合理的用户权限管理机制是非常重要的。
权限控制策略:1. 最小权限原则:每个用户只被授予完成其工作所需的最低权限。
这样可以降低风险,即使用户的账号被盗或者出现人为错误,也不会对数据库的整体安全性产生太大的影响。
2. 分层控制:根据用户的角色和责任划分不同的权限层级。
比如,超级管理员拥有最高的权限,可以对数据库进行任意的操作;普通用户只能进行数据的查询和简单的修改,无法对数据库结构进行变更。
通过分层控制可以保证用户权限的合理分配,进而提高数据库的安全性。
3. 日志监控与审计:建立日志监控系统并定期审计,对用户的访问和操作进行记录和分析。
如果发现异常行为或者潜在的安全漏洞,立即采取相应的措施。
日志监控与审计可以有效监控权限的合法使用,并及时发现并应对安全威胁。
授权与认证:1. 授权:授权是指企业数据库管理员为用户分配和管理权限的过程。
该过程包括用户身份验证、权限划分、权限分配等环节。
在实际操作中,可以采用角色-权限映射的方式进行授权管理。
管理员可以将不同权限分配给事先定义好的用户角色,而不需要为每个用户单独分配权限。
这样,即方便了权限管理,又提高了系统的可维护性。
2. 认证:认证是指验证用户身份的过程。
通常使用的方式有用户名和密码的验证、数字证书的验证、指纹、虹膜等生物特征的验证等。
合理的认证方式可以防止非法用户对数据库进行访问和操作,从而保证数据库的安全性。
数据库管理与权限管理方案一、数据库管理方案。
1. 数据库结构规划。
首先呢,得像规划一个城市布局一样规划数据库结构。
把数据按照功能或者类型分成不同的“区域”,就像城市里的商业区、住宅区啥的。
比如说,用户信息放一个表,订单信息放一个表。
这样找数据的时候就像在对应的区域找东西,比较方便。
给每个表起个清晰的名字,最好是一看就知道里面装的啥。
可别起那种让人摸不着头脑的名字,不然以后自己都得晕。
2. 数据备份策略。
数据这玩意儿可金贵了,就像自己的宝贝一样。
得定期备份,比如说每天晚上备份一次。
备份就像给数据拍个照片,万一数据丢了或者坏了,还能从备份里找回来。
备份的存储位置也很重要。
不能都放在一个地方,要是那个地方出问题了,备份也跟着完蛋。
可以把备份存到另外一个硬盘或者云端,就像把宝贝分散藏在几个安全的地方一样。
3. 数据更新与维护。
数据也不是一成不变的,就像人会长大变老一样。
当有新的数据进来或者旧的数据需要修改的时候,要有个严格的流程。
比如说,谁负责更新,得经过谁的审核之类的。
不能随便就改数据,不然数据就乱套了。
要定期检查数据的准确性和完整性。
就像定期检查家里的东西有没有坏一样。
如果发现数据有问题,要及时修复,不然会影响整个系统的运行。
4. 性能优化。
数据库就像一辆车,如果跑得慢了,那就得优化优化。
可以看看哪些查询语句跑得慢,就像看看车的哪个零件不好使了。
然后优化这些查询语句,比如给表加个索引,这就像给车加个涡轮增压器,能让查询速度快很多。
还要注意数据库服务器的资源使用情况,像CPU、内存、磁盘啥的。
如果资源不够用了,就得想办法扩充,就像给车加油或者换个大油箱一样。
二、权限管理方案。
1. 用户分类与权限定义。
咱得把用户分成不同的类型,就像把人分成不同的角色一样。
比如说,有普通用户、管理员用户、数据录入员之类的。
然后给每个类型的用户定义不同的权限。
普通用户可能只能查看自己的数据,就像普通居民只能进自己家一样。
管理员用户就厉害了,可以对整个数据库进行管理,就像小区物业能管整个小区一样。
数据权限设计方案数据权限是指在一个组织或系统中,为用户或用户组设置访问和操作数据的权限。
在一个复杂的系统中,数据权限的设计和实现是非常重要的,它能够有效地控制数据的访问、修改和删除,确保数据的安全性和合规性。
本文将介绍一个数据权限设计的方案,以实现对数据访问的精确控制。
一、数据权限的概念数据权限是指通过对用户或用户组设置权限,限制其对数据的访问、修改和删除的能力。
数据权限设计的目标是确保只有具备相应权限的用户才能够对数据进行操作,从而保障数据的安全性和完整性。
二、数据权限设计的原则1. 最小权限原则:每个用户只能拥有其工作职责所必需的最低权限,避免权限过大或冗余。
2. 数据隔离原则:用户只能访问其需要的数据,禁止访问其他用户或用户组的数据。
3. 数据完整性原则:用户只能修改或删除其具备修改权限的数据,禁止对其他数据进行修改或删除操作。
4. 审计追踪原则:系统应记录用户的数据访问和操作行为,以便于追踪和审计。
三、数据权限设计的步骤数据权限设计的过程分为以下几个步骤:1. 确定数据分类:根据数据的属性和敏感程度,将数据划分为不同的分类。
例如,可以将客户数据和财务数据划分为不同的分类。
2. 确定用户和用户组:根据组织的架构和工作职责,确定需要访问数据的用户和用户组。
例如,销售部门的员工可以访问客户数据,财务部门的员工可以访问财务数据。
3. 定义角色和权限:根据用户和用户组的工作职责,定义相应的角色和权限。
角色是一组权限的集合,用户通过被分配到相应的角色来获取相应的权限。
例如,销售员角色可以访问客户数据,财务员角色可以访问财务数据。
4. 分配角色和权限:根据用户的工作职责,将相应的角色和权限分配给用户。
在分配角色和权限时,应遵循最小权限原则,确保每个用户只拥有其工作职责所需的最低权限。
5. 实现权限控制:根据角色和权限的定义,实现相应的权限控制机制。
可以通过在系统中实现访问控制列表(ACL)或角色基于访问控制(RBAC)等方式来实现权限控制。
数据库权限设计在数据库设计中,权限设计是一个至关重要的方面。
它对于确保数据库的安全性和数据的保护至关重要。
权限设计的目的是确保只有经过授权的用户才能访问数据库,并且只能访问其特定角色需要的数据。
一个良好的权限设计可以防止未经授权的访问,防止数据泄露或恶意操作。
在进行权限设计时,需要考虑以下几个方面:1. 角色的定义:首先,需要定义不同的用户角色。
这可能包括管理员、普通用户、只读用户等等。
每个角色都应该具有特定的权限和访问级别。
2. 权限的细化:对于每个角色,需要确定其具体的权限和操作范围。
这可能包括读取、写入、修改、删除等。
确保只有必要的权限被授予给每个角色,避免过度授权。
3. 用户组织:将用户组织成不同的组,这可以简化权限管理,并确保不同组的用户具有相似的访问权限。
4. 强密码策略:为了保护数据库的安全性,应该实施一套强密码策略。
这包括要求用户使用复杂的密码,定期更换密码,并限制用户对密码的访问。
5. 审计和日志:设置数据库日志记录和审计功能,以便跟踪用户的操作记录和系统变更。
这将有助于检测异常行为和处理潜在的安全问题。
在权限设计完成后,需要对其进行定期的审查和更新。
随着组织的发展和用户需求的变化,权限设计可能需要进行调整。
另外,确保及时撤销已离职或不需要访问数据库的用户的访问权限也是非常重要的。
总之,数据库权限设计是确保数据库安全和数据保护的关键措施之一。
它涉及到角色定义、权限细化、用户组织、强密码策略和审计日志等方面。
通过良好的权限设计,可以有效地管理和控制用户对数据库的访问,从而保护数据库的安全性。
JAVA权限管理系统数据库设计在设计JAVA权限管理系统的数据库时,需要考虑到权限管理的基本需求,包括用户管理、角色管理、权限管理及相关关系的存储和管理。
首先,数据库的设计需要考虑用户管理,该模块用于存储和管理用户的基本信息,如用户ID、用户名、密码等。
用户表可以设计为以下字段:- 用户ID(User ID)- 用户名(Username)- 密码(Password)- 手机号(Phone Number)用户表中的用户ID是主键,用于唯一标识每一个用户。
接下来,数据库的设计需要考虑角色管理,该模块用于存储和管理角色的基本信息。
角色表可以设计为以下字段:- 角色ID(Role ID)- 角色名称(Role Name)角色表中的角色ID是主键,用于唯一标识每一个角色。
权限管理模块是权限管理系统的核心模块,用于存储和管理用户和角色之间的权限关系。
该模块可以设计为以下表结构:- 权限ID(Permission ID)- 权限名称(Permission Name)权限表中的权限ID是主键,用于唯一标识每一个权限。
接下来,需要设计用户和角色之间的关系,用户角色关系表可以设计为以下字段:- 关系ID(Relation ID)- 用户ID(User ID)- 角色ID(Role ID)用户角色关系表中的关系ID是主键,用于唯一标识每一个用户角色关系。
最后,在数据库设计中,需要考虑到不同模块之间的关联关系。
使用外键来定义表之间的关系,并添加必要的索引以提高系统性能。
综上所述,JAVA权限管理系统的数据库设计包括用户管理、角色管理、权限管理及相关关系的存储和管理。
通过合理设计数据库表结构和各表之间的关系,可以实现权限管理系统的基本功能,满足用户对权限的管理需求。
同时,为了提高系统性能,还需要考虑索引的设计和合理使用。
数据库应用系统用户权限设置及用户跟踪程序的设计方法廖琪男(广西商业高等专科学校,南宁 530003)X[摘要] 本文系统地陈述了数据库应用系统中用户权限设置及用户使用系统跟踪概念及其重要意义,并以用Visual Fox Pro 实现数据库应用系统的用户权限设置及用户跟踪的程序设计过程为驱动,介绍数据库应用系统的用户权限设置及用户跟踪程序设计原理和过程。
本文介绍的方法完全适用于Delphi 、C gg Builder 、Visual Basic 和Visual C gg 等数据库应用开发工具设计数据库应用系统的用户权限及用户跟踪程序。
[关键词] 数据库应用系统;权限设置;用户跟踪;加密解密[中图分类号] TP393.08 [文献标识码] B [文章编号] 1004-6232(2004)02-0104-04 我在开发数据库应用系统的教学和科研过程中发现,在众多的数据库应用系统实例、课程设计案例等的数据库应用系统开发技术图书资料中,对数据库应用系统的用户权限及设置、用户操作跟踪的概念与实现缺乏正确、深刻和完整的介绍。
有的仅仅是单纯介绍权限设置原理,没有示例;有的只是简单地给出一个系统权限的例子:口令+用户名,这只是使用系统的权限,不是真正意义上的权限;有的把用户权限写在源程序上,这更是不可取,一旦更换用户权限,必须修改源程序。
提及用户使用跟踪的更是少之甚少。
然而在实际的数据库应用系统开发中不是这么简单的,那么什么是真正意义上的权限和跟踪呢?又如何设计呢?权限即是控制某些用户使用应用系统某些功能模块的权利,甚至精确到控制某些用户只能浏览数据不能修改数据等。
例如,在人事工资管理系统中,财务人员就不能越权操作人事功能模块,有些人事管理人员只能浏览人事情况,不能修改人事数据。
一个用户可能有多种权限,也可能多个用户拥有同一种权限。
超级用户可以使用系统的所有功能,因为只有超级用户才可以设置用户权限,当然也就可以设置自己的权限为可操作所有功能模块。
跟踪即是对合法用户何时操作何功能模块的现场记录,也就是说把合法用户何时操作何功能模块的实况记录下来。
由此可见,在一套完善的数据库应用系统中,用户权限的设置和用户操作跟踪是非常重要的,它不仅可以防止越权操作,而且可以辅助查处破坏数据的根源。
为了数据库应用系统的开发工作者进行技术交流,为了使数据库应用系统开发的初级工作者和广大高校学生迅速掌握数据库应用系统的开发技术,现把我在数据库应用系统中的权限设置和跟踪实现程序提炼出来,以飧读者,也请广大同行斧正。
为了不失一般性,在下面的程序设计中,不涉及具体的应用系统,也不涉及应用系统的其他细节,采用应用最广泛的微机数据库应用系统开发工具Visual FoxPro 编写程序。
104第21卷 第2期vol 121 No.2广西商业高等专科学校学报Journal of Guangxi Commercial C ollege 2004年6月JUNE 12004X收稿日期:2004-03-18作者简介:廖琪男(1964-),男,广西商业高等专科学校计算机与信息工程系高级工程师。
一、设计数据库及数据库表在应用程序项目中,建立数据库App_DB,并建立用户权限表Operator和用户操作跟踪表U serAct。
用户权限表Operator的主关键字是id,其结构如表1所示。
表中的权限依具体的应用系统而定,这里只作示例。
表1用户权限表Oper ator字段名数据类型备注Id C(3)用户编号Name C(8)用户姓名Passwor d C(10)用户密码SuperPower L(1)超级用户User PowerA L(1)功能A权限User PowerB L(1)功能B权限User PowerC L(1)功能C权限用户操作跟踪表U serAct的结构如表2所示。
表2用户操作跟踪表U serAct字段名数据类型备注Id C(3)用户编号Name C(8)用户姓名Datetime T(8)日期时间A ction C(12)功能二、设计登录表单创建用户登录表单Log in.scx。
用户登录表单的设计表单如图1所示。
图1用户登录表单设计表单1.数据环境在数据环境中添加operator.dbf,并设置其Ex clusive(独占)属性值为.T.。
2.表单中控件对象及其重要属性设置登录表单使用表单Form1、1个标签、1个组合框、一个文本框和2个命令按钮。
这里给出对象Combo1的重要属性设置如表3所示。
表3对象Combo1的重要属性设置属性属性值说明BoundColumn2数据绑定ColumnCount22列RowSourceT ype6-字段数据来源类型RowSource ,id数据来源3.表单Form1的用户自定义方法crypt()crypt()是一个字符型数据的加密函数,代码如下:parameters hashstrprivate i,n,nc,str1,str2str2=00n=len(hashstr)for i=1to n&&第1次加密*防止ASCI I>255if asc(substr(hashstr,i,1))+i>255nc=chr(255-asc(substr(hashstr,i,1)))elsenc=chr(asc(substr(hashstr,i,1))+i)endifhashstr=stuff(hashstr,i,1,nc)endforfor i=n to1step-1&&第2次加密str1=substr(hashstr,i,1)str2=str2+str1endforreturn str2这种加密算法简单,但安全可靠,而且是一种可逆算法。
由于篇幅所限,crypt()算法的逆运算解密程序decrypt()就由读者完成了。
4.表单Form1的init事件代码if!file(0system.ini0)&&初始化用户zap*初始化用户权限hashpass=thisform.crypt(0system0)insert into operator(id,name,;passw ord,superpow er,userpow era,;userpow erb,userpow erc)value;(0A010,0system0,hashpass,.t.,;.f.,.f.,.f.)105COPY TO system.ini FIELDS;name,passw ord SDFendifset order to idg o topbo1.value=idpublic passwordno,userid,username,; userpass,superuser,pow era,;pow erb,pow ercuserid=00&&保存登录用户编号username=00&&保存登录用户姓名userpass=00&&保存登录用户密码*superuser,pow era,pow erb,*pow erc保存登录用户权限superuser=.F.pow era=.F.pow erb=.F.pow erc=.F.passwordno=0&&记录输入密码的次数5./确定0按钮的Click事件代码hashpass=thisform.crypt(alltrim; (thisform.txtpass.value))&&密码转换if hashpass==alltrim(password)userid=bo1.value username=nameuserpass=hashpasssuperuser=superpow erpow era=userpow erapow erb=userpow erbpow erc=userpow ercrele thisformdo form main&&执行主表单elsepassw ordno=passw ordno+1if passw ordno<3messagebox(0密码错,请重新输入0,;64,0信息窗口0)thisform.tx tpass.value=00thisform.tx tpass.setfocuselsemessagebox(0对不起,你无权使用此;系统,欢迎光顾!0,0,0信息窗口0)rele thisformendifendif三、设计主表单创建示例主表单main.scx。
示例主表单设计表单如图2所示。
图2示例主表单设计表单1.表单Form1的用户自定义方法useract()useract()用于记录当前用户何时使用何功能模块,实现代码如下:parameters descriptinsert into useract(id,name,;datetime,action)value(userid,;username,datetime(),descript)2.表单Form1的init事件代码只有超级用户才能使用/用户设置0和/用户跟踪0功能模块,实现代码如下:if superuserm and5.visible=.T.m and6.visible=.T.elsem and5.visible=.F.m and6.visible=.F.endif3.各功能按钮的Click事件代码功能A按钮的Click事件代码如下:if pow era=eract(0功能A0)do form Fpowera&&执行功能Aendif其他功能按钮及应用系统的相应菜单项的Click事件代码同理给出,这样便可实现对用户操作跟踪了。
106四、设计用户权限设置表单创建用户权限设置表单userpow er.scx。
用户权限设置表单设计表单如图3所示。
图3用户权限设置表单设计表单用户权限设置表单由主表单的/用户设置0按钮调用。
1.数据环境在数据环境中添加operator.dbf,并设置其Ex clusive(独占)属性值为.T.。
2.表单中控件对象及其重要属性设置权限设置表单使用表单Form1、表格对象Grid1和3个命令按钮对象。
其中权限设置的用户权限所在列的对象Text1改为复选框对象Check1,并修改其Caption属性值为(无),修改其所在的列的Sparse属性值为.F.)假。
五、设计用户设置表单创建用户设置表单userset.scx。
用户设置表单设计表单如图4所示。
图4用户设置表单设计表单用户设置表单由用户权限设置表单的/增加0按钮调用。
1.表单Form1的用户自定义方法crypt()crypt()与用户登录表单的crypt()一样。