用户权限设计
来源:互联网 发布:nginx tomcat 502错误 编辑:程序博客网 时间:2024/06/04 01:08
1) 具有创建用户、修改用户和删除用户的功能: Administrator
2) 具有创建角色和删除角色的功能: Administrator
Static_User字段名
详细解释
类型
备注
UserID
路线编号
varchar(20)
PK
UserName
用户名称
varchar(20)
UserPwd
用户密码
varchar(20)
LastSignTime
最后登陆时间
datatime
SignState
用户登陆状态标记
int
TickeID
验证票记录编号
varchar(128)
Static_User字段名
详细解释
类型
备注
RoleID
角色编号
varchar(20)
PK
RoleName
角色名称
varchar(20)
RoleNote
角色信息描述
varchar(20)
Static_User字段名
详细解释
类型
备注
UserRoleID
用户角色编号
varchar(20)
PK
UserID
用户编号
varchar(20)
FK
RoleID
角色编号
varchar(20)
FK
UserRoleNote
用户角色信息描述
varchar(20)
Static_User字段名
详细解释
类型
备注
PermissionID
编号
varchar(20)
PK
PermissionName
权限名称
varchar(20)
PermissionNote
全息信息描述
varchar(20)
Static_User字段名
详细解释
类型
备注
RolePermissionID
角色权限编号
varchar(20)
PK
RoleID
角色编号
varchar(20)
FK
PermissionID
权限编号
varchar(20)
FK
RolePermissionNote
角色权限信息描述
varchar(20)
using System.Web.Services;
using System.Web.Services.Protocols;
// AuthHeader class extends from SoapHeader
public class AuthHeader : SoapHeader {
public string Username;
public string Password;
}
public class HeaderService : WebService {
public AuthHeader sHeader;
...
[WebMethod(Description="This method requires a custom soap header set by the caller")]
[SoapHeader("sHeader")]
public string SecureMethod() {
if (sHeader ==null)
return "ERROR: Please supply credentials";
else
return "USER: " + sHeader.Username;
}
HeaderService h = new HeaderService();
AuthHeader myHeader =new AuthHeader();
myHeader.Username = "username";
myHeader.Password = "password";
h.AuthHeader = myHeader;
String result = h.SecureMethod();
public class ClientClass {
public static void Main() {
GenericIdentity ident = new GenericIdentity("Bob");
GenericPrincipal prpal = new GenericPrincipal(ident,
Newstring[] {"Level1"});
LogicalCallContextData data =
new LogicalCallContextData(prpal);
//Enter data into the CallContext
CallContext.SetData("test data", data);
Console.WriteLine(data.numOfAccesses);
ChannelServices.RegisterChannel(new TcpChannel());
RemotingConfiguration.RegisterActivatedClientType(
typeof(HelloServiceClass), "tcp://localhost:8082");
HelloServiceClass service = new HelloServiceClass();
if(service ==null) {
Console.WriteLine("Could not locate server.");
return;
}
// call remote method
Console.WriteLine();
Console.WriteLine("Calling remote object");
Console.WriteLine(service.HelloMethod("Caveman"));
Console.WriteLine(service.HelloMethod("Spaceman"));
Console.WriteLine(service.HelloMethod("Bob"));
Console.WriteLine("Finished remote object call");
Console.WriteLine();
//Extract the returned data from the call context
LogicalCallContextData returnedData =
(LogicalCallContextData)CallContext.GetData("test data");
Console.WriteLine(data.numOfAccesses);
Console.WriteLine(returnedData.numOfAccesses);
}
}
using System;
using System.Text;
using System.Runtime.Remoting.Messaging;
using System.Security.Principal;
publicclass HelloServiceClass : MarshalByRefObject {
static int n_instances;
int instanceNum;
public HelloServiceClass() {
n_instances++;
instanceNum = n_instances;
Console.WriteLine(this.GetType().Name + " has been created.
Instance # = {0}", instanceNum);
}
~HelloServiceClass() {
Console.WriteLine("Destroyed instance {0} of
HelloServiceClass.", instanceNum);
}
public String HelloMethod(String name) {
//Extract the call context data
LogicalCallContextData data =
(LogicalCallContextData)CallContext.GetData("test data");
IPrincipal myPrincipal = data.Principal;
//Check the user identity
if(myPrincipal.Identity.Name == "Bob") {
Console.WriteLine("\nHello {0}, you are identified!",
myPrincipal.Identity.Name);
Console.WriteLine(data.numOfAccesses);
}
else {
Console.WriteLine("Go away! You are not identified!");
return String.Empty;
}
// calculate and return result to client
return "Hi there " + name + ".";
}
}
1)class UserInfoMng() 用户信息管理类,其中包括方法:
l CreateUserInfo(string UserName string UserPwd) 建立用户信息,调用存储过程CreateUserInfo(@UserName,@UserPwd)
l ModifyUserInfo(string UserName string UserPwd) 修改用户信息,调用存储过程ModifyUserInfo(@UserName,@UserPwd)
l DeleteUserInfo() 删除用户信息,调用存储过程DeleteUserInfo
(@UserID)
2)class UserAuthentication() 用户认证类,用来实现用户角色、权限的设置,包括方法:
l CreatePermissionInfo(string PermissionName string Permissi-
-onNote) 建立权限信息,调用存储过程CreatePermissionInfo
(@PermissionName,@PermissionNote)
l CreateRoleInfo(string RoleName string RoleNote) 建立角色信息,调用存储过程CreateRoleInfo(@RoleName,@RoleNote)
l DeleteRoleInfo() 删除角色信息,调用存储过程DeleteRoleInfo
(@RoleID)
l GrantUserRole(string UserID string RoleID string UserRoleNote) 授予用户角色,调用存储过程GrantUserRole(@UserID,@RoleID,
@UserRoleNote)
l DeleteUserRole() 删除用户角色,调用存储过程DeleteUserRole
(@UserRoleID)
l GrantRolePermission(string RoleID string PermissionID string RolePermissionNote) 授予角色权限,调用存储过程GrantRolePermission(@RoleID,@PermissionID,@RolePermissionNote)
l DeleteRolePermission() 删除授予的角色权限,调用存储过程
DeleteRolePermission(@RolePermissionID)
1)权限设置
class PermissionInfoMng() 用户权限信息管理类,包括方法:
l CreatePermissionInfo() 建立权限信息
2)用户管理
class UserInfoMng() 用户信息管理类,包括方法:
l CreateUserInfo() 建立用户信息
l ModifyUserInfo() 修改用户信息
l DeleteUserInfo() 删除用户信息
3)用户授权管理
class RoleInfoMng() 角色信息管理类,包括方法:
l CreateRoleInfo() 建立角色信息
l DeleteRoleInfo() 删除角色信息
class UserRoleMng() 用户角色管理类,包括方法:
l GrantUserRole() 授予用户角色
l DeleteUserRole() 删除用户角色
class RolePermissionMng() 角色权限管理类,包括方法
l GrantRolePermission() 授予角色权限
l DeleteRolePermission() 删除角色权限
4)用户认证管理
class Authentication() 用户认证类,包括方法:
l Login(string UserName string UserPwd) 用户登陆认证,用户认证通过分配给用户一个TicketID,否则TicketID则为null
l Logout() 用户正常退出
- 用户权限设计
- 用户权限设计
- 用户权限设计
- 用户权限设计
- 用户权限设计
- 用户权限设计
- 用户权限设计
- 用户权限设计
- 用户权限系统设计
- 用户权限管理设计(1)
- 通用用户权限系统设计
- 用户权限管理设计(2)
- 通用用户权限系统设计
- 设计用户权限杂谈
- Open4Cms用户权限管理设计
- 系统中的用户权限设计
- 通用用户权限系统设计
- 用户权限设计--转2
- MSSQL 2008自动备份数据库
- poj3062
- Lua中的数学库
- 求不规则图形内像素点(凸状)
- linux硬盘检测健康状态
- 用户权限设计
- 在iOS中创建静态库(Creating a Static Library in iOS Tutorial)
- centos配置ip地址 添加多个ip地址
- 为unity添加自定义菜单
- LVS负载均衡学习
- JSch - Java实现的SFTP(文件下载详解篇)
- JSP过滤器防止Xss漏洞
- SharePoint 2013 APP 安全示例 (二)获取用户信息
- android打电话---android.intent.action.CALL