[原创]asp.net2.0下用户权限实现方法初探(一)。
至从MS推出vs2005 .net2.0后,很多新手就发现了vs2005内置了login之类的用户权限管理的控件,而且可以通过aspreg之类的命令直接在数据库实现用户权限的表还有实现。这种方法还可以通过membership和profile来进行扩展。现在就对个人设计和用.net2.0内置的权限管理部门进行探讨,不足之处请各位斧正。
一般来说一个简单的系统权限为三部分用户、权限、角色
1、一种是自己写代码来实现。
在SQL创建相应的表
/****** 权限分类 ******/
CREATE TABLE [dbo].[Accounts_PermissionCategories]( [CategoryID] [int] IDENTITY(1,1) NOT NULL, [Description] [varchar](255) NULL ) ON [PRIMARY]
/****** 权限表 ******/
CREATE TABLE [dbo].[Accounts_Permissions]( [PermissionID] [int] IDENTITY(1,1) NOT NULL, [Description] [varchar](255) NULL, [CategoryID] [int] NULL ) ON [PRIMARY] /****** 角色权限表 ******/
CREATE TABLE [dbo].[Accounts_RolePermissions]( [RoleID] [int] NOT NULL, [PermissionID] [int] NOT NULL ) ON [PRIMARY]
/****** 用户角色分配表 ******/
CREATE TABLE [dbo].[Accounts_UserRoles]( [UserID] [int] NOT NULL, [RoleID] [int] NOT NULL ) ON [PRIMARY]
USE [TianSoftData] GO /****** 用户表 ******/ CREATE TABLE [dbo].[Accounts_Users]( [UserID] [int] IDENTITY(1,1) NOT NULL, [UserName] [varchar](50) NOT NULL, [Password] [binary](20) NOT NULL, [TrueName] [varchar](50) NULL, [Sex] [char](2) NULL, [Phone] [varchar](20) NULL, [Email] [varchar](100) NULL, [EmployeeID] [int] NULL, [DepartmentID] [varchar](15) NULL, [Activity] [bit] NULL, [UserType] [char](2) NULL, [Style] [int] NULL, CONSTRAINT [PK_Accounts_Users] PRIMARY KEY CLUSTERED ( [UserID] ASC )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY] ) ON [PRIMARY]
/****** 角色表 ******/
CREATE TABLE [dbo].[Accounts_Roles]( [RoleID] [int] IDENTITY(1,1) NOT NULL, [Description] [varchar](255) NULL ) ON [PRIMARY] 下午继续。。。。。