上一篇:【自然框架】之通用权限的Demo(一):角色的添加和修改

先说一下这次的Demo里增加的内容吧。

      1、添加人员

            这个很简陋了,主要就是为了能够添加一条人员信息,然后可以给这个人员来添加账户。不过后续我会把这一块完善一下的,能够实现一些基本的人员管理的功能。

      2、添加账户

            先选择一个人员,然后给这个人员添加一个账户,然后就可以用这个账户登录了,如果没有给他分配角色的话,那么他就只能登录,什么都做不了,呵呵。

附件: 2009-07-02_122904.gif

      3、添加角色里面的账户

            3.1、这里我修改了一下“添加角色”的后台代码,虽然您可能还是看不上眼,但是比前一版本要好上一些。

附件: 2009-07-02_122916.gif

            3.2、增加了一个“给角色添加账户”的功能,就是往角色里面加账户了。然后再用这个账户登录,就可以看到角色里允许使用的功能节点了。

附件: 2009-07-02_122924.gif

      4、列表的权限验证,即权限到节点的验证。

            权限到节点,如果只是在功能节点上做一下过滤,把没有权限的节点过滤掉的话,那是不够安全的,因为可以直接在浏览器的地址栏上面输入网址。也就是说需要在列表页面里再做一次验证才行。

            我是在列表的基类里面做的这个验证,也很简单,代码如下。其他页面调用一下即可。
  1. #region 验证权限 实现的代码
  2.         /// <summary>
  3.         /// 验证当前用户是否可以访问指定的功能节点
  4.         /// </summary>
  5.         /// <param name="functionID">要验证的节点</param>
  6.         public void CheckFunctionID(string functionID)
  7.         {
  8.             //判断当前用户是否有权限访问该网页,
  9.             string tmpFunctionIDs = "," + this.MyUser.FunctionIDs + ",";

  10.             functionID = "," +functionID + ",";

  11.             if (tmpFunctionIDs.IndexOf(functionID) >= 0)
  12.             {
  13.                 //有权限
  14.             }
  15.             else
  16.             {
  17.                 //没有权限
  18.                 Response.Redirect("/noPermission.aspx");
  19.                 Response.End();
  20.             }
  21.         }
复制代码
(文/金色海洋(jyk)

Demo的下载地址:
TOP