计算机应用与开发实训报告(正文)模版.doc_第1页
计算机应用与开发实训报告(正文)模版.doc_第2页
计算机应用与开发实训报告(正文)模版.doc_第3页
计算机应用与开发实训报告(正文)模版.doc_第4页
计算机应用与开发实训报告(正文)模版.doc_第5页
已阅读5页,还剩10页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

湖北理工学院计算机应用与开发实训报告目录一实训内容21、案例分析22、解决方案2数据库关系图(E-R图)如下:3物理图3用例图4系统功能模块图53、程序实现5系统实现的功能:5用户登录5给用户添加权限6给组添加权限6给角色添加权限7给用户添加角色7删除一个角色7删除一个组8给用户,组,角色添加角色9二. 项目调试与测试9登录界面9所有权限10用户管理10角色管理11组管理11三 实训小结13一实训内容 1、案例分析 企业应用系统对安全问题有较高的要求,基于角色的访问控制方法,实现了用户与访问权限的逻辑分离,更符合企业的用户、组织、数据和应用特征。把整个访问控制过程分成两步:访问权限与角色相关联,角色再与用户或者组关联,从而实现了用户与访问权限的逻辑分离。它极大的方便了权限管理。2、解决方案为此我们要设计如下几张关键的数据表,用户:记录用户信息;角色:权限的集合;组:用户的集合;权限:权限的基本信息;数据库关系图(E-R图)如下:物理图用例图系统功能模块图3、程序实现代码实现应分为三大部分:系统实现的功能:1、创建、删除,更新角色,并添加权限到角色;2、创建、删除,更新用户,并可个用户添加权限或者角色;3、创建、删除,更新组,并给组添加用户,在给组添加权限;用户登录采用动态权限,用TreeView获取数据库中用户的权限: ALTER PROCEDURE GetAuthority cno int ASselect * from Authority where ano in(select ano from c_a where cno=cno)union select * from Authority where ano in(select ano from g_a where gno in( select gno from c_g where cno=cno)union select * from Authority where ano in(select ano from a_ac where acno in(select acno from c_ac where cno=cno)页面加载事件中: int cno = Convert.ToInt32(Request.Cookiesid.Value); string conn = ConfigurationManager.ConnectionStringsGDSConnectionString.ToString(); SqlConnection mycon = new SqlConnection(conn); mycon.Open(); SqlCommand mycom = new SqlCommand(); mycom.CommandText = GetAuthority; mycom.CommandType = CommandType.StoredProcedure; mycom.Connection = mycon; SqlParameter p1 = new SqlParameter(cno, cno); mycom.Parameters.Add(p1); DataTable dt = new DataTable(); SqlDataAdapter sda = new SqlDataAdapter(mycom); sda.Fill(dt); GridView1.DataSource = dt; GridView1.DataBind();给用户添加权限ALTER PROCEDURE AddOneAuthToCuscno int,ano intASinsert into c_a values(cno,ano)给组添加权限ALTER PROCEDURE AddOneAuthToGroano int,gno intASinsert into g_a values(ano,gno)给角色添加权限ALTER PROCEDURE AddOneAuthToActano int,acno intASinsert into a_ac values(ano,acno)给用户添加角色ALTER PROCEDURE AddOneCusToActcno int,acno intASinsert into c_ac values (cno,acno)删除一个角色先判断该角色下是否还有用户,若有,则不能删除ALTER PROCEDURE DeleteOneActoracno int,type int outputASif not exists(select * from c_ac where acno=acno)begin if not exists(select * from a_ac where acno=acno) begin delete from Actor where acno=acno set type=1 endEnd按钮点击事件中:protected void Button1_Click(object sender, EventArgs e) int type = 0; for (int i = 0; i = GridView1.Rows.Count - 1; i+) CheckBox checkbox = (System.Web.UI.WebControls.CheckBox) GridView1.Rowsi.FindControl(CheckBox1); if (checkbox.Checked = true) string conn = ConfigurationManager.ConnectionStringsGDSConnectionString.ToString(); SqlConnection mycon = new SqlConnection(conn); mycon.Open(); SqlCommand mycom = new SqlCommand(); mycom.CommandText = DeleteOneActor; mycom.CommandType = CommandType.StoredProcedure; mycom.Connection = mycon; SqlParameter p1 = new SqlParameter(acno, GridView1.DataKeysi.Value); mycom.Parameters.Add(p1); SqlParameter p2 = new SqlParameter(); p2.ParameterName = type; p2.Value = type; p2.SqlDbType = SqlDbType.Int; p2.Direction = ParameterDirection.Output; mycom.Parameters.Add(p2); mycom.ExecuteNonQuery(); type = Convert.ToInt32(p2.Value); mycom.Parameters.Clear(); mycon.Close(); if (type = 1) ClientScript.RegisterStartupScript(GetType(), , window.alert(删除成功!);, true); else ClientScript.RegisterStartupScript(GetType(), , window.alert(该角色尚有成员或权限,无法删除!);, true); Bind(); 删除一个组先判断该角色下是否还有用户,若有,则不能删除ALTER PROCEDURE DeleteOneGroupgno int,type int outputASif not exists(select * from g_a where gno=gno)begin if not exists(select * from c_g where gno=gno) begin delete from Groups where gno=gno set type=1 endEnd给用户,组,角色添加角色需提取所有权限中他们没有添加的那部分ALTER PROCEDURE GetActNotAddAuthacno intASselect * from Authority where ano not in(select ano from a_ac where acno=acno)2. 项目调试与测试登录界面已拥有权限的用户登录进去后 左边列表即为该用户的权限所有权限 用户管理 用户管理可以查看所有用户,添加用户,删除用户,通过单选按钮选择用户并对用户的权限进行修改;权限授予需获取该用户没有的权限,权限回收需获取用户已获得的权限。角色管理 角色管理可以查看所有角色,添加角色,对该角色下的成员进行增、删、改、查操作,通过复选框按钮选择用户进行添加或删除用户,同样的通过复选框按钮选择权限对该角色下的权限进行修改;添加用户需获取该角色不包含的用户,删除用户需获取该角色包含的角色;权限授予需获取该用户没有的权限,权限回收需获取用户已获得的权限。组管理组管理可以查看所有组,添加组,对该组下的成员进行增、删、改、查操作,通过复选框按钮选择用户进行添加或删除用户,同样的通过复选框按钮选择权限对该组下的权限进行修改;添加用户需获取该组不包含的用户,删除成员需获取该组包含的角色;权限授予需获取该组没有的权限,权限回收需获取组已获得的权限。3 实训小结 通过这个培训,我学到了不少东西,没培训之前,对做系统的概念很模糊,无从下手,现在,我能独立的完成一个中小型系统的设计与实现。成长了不少。这个培训让我学到了很多知识:1、 SQL语句、存储过程、数据库的设计与实现2、 PowerBulider和PowerDesinger的熟练运用3、 HTML、DIV+CSS、javascript、jquery语音4、 C#程序设计5、 ASP.NET内置对

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论