作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
与许多现实世界的应用程序一样,安全性(登录名/密码)只是为了授予/拒绝对完整应用程序的访问权限。现在客户端要求细粒度的安全性,例如某些网页应该只能查看,某些用户可以删除其他不能等。
基本上客户要求以下内容。
有效权限::用户-->网页-->访问类型 (查看、创建/编辑、删除)
申请详情
最佳答案
您可以使用 IsInRole
功能并将您的用户分类为角色。每个角色都可以有一些只能完成的 Action 。因此,通过询问女巫角色是用户,您可以让他做或不思考。
HttpContext.Current.User.IsInRole("Role")
public enum csPermissions
{
pActionDelete = 1,
pActionEdit = 2 ,
// more names...
}
private int[] AdminPermission = {
(int)csPermissions.pActionEdit,
(int)csPermissions.pActionDelete,
// more permissions...
};
private int[] BackOfficePermission = {
(int)csPermissions.pActionEdit,
// more permissions...
};
public static bool IsThisAllowed(csPermissions AskPermitForThisAction)
{
// questions here for all users roles...
// here is only an example
if (HttpContext.Current.User.IsInRole("Administator")))
{
for (int i = 0; i < AdminPermission.Length; i++)
if (AdminPermission[i] == (int)AskPermitForThisAction)
return true;
}
// no permission found
return false;
}
关于asp.net - 作为事后的想法在 ASP.NET Web App 中实现安全性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10880286/
我是一名优秀的程序员,十分优秀!