如果用户没有权限,如何在登录后从菜单中隐藏Web表单?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如果用户没有权限,如何在登录后从菜单中隐藏Web表单?相关的知识,希望对你有一定的参考价值。

我使用ASP.NET c#构建了一个网站项目,该项目包含大约30个Web表单,然后我创建了用户组,每个用户都可以访问某些Web表单取决于他的角色,然后我将屏幕添加到组中,例如预订员工组将访问预订Web表单,经理组将访问所有Web表单和屏幕等,现在我创建了以下checkrole void并将其放入page_load以检查用户是否在他的组下面有此Web表单然后他可以访问窗口,否则重定向到主页。

这是CheckRole的空白:

void CheckRoles()
        {
            if (Session["userid"] == null)
            {
                Response.Redirect("/LoginPage.aspx");
            }
            string user_id = Session["userid"].ToString();
            string group_id = func.firesql("select [user_kind_id] from [Users_web] where user_id = '" + user_id + "'");
            string page_current = Request.Url.PathAndQuery.ToString().ToLower();
            string sql = @"SELECT [page_name] FROM [permission_pages] where [group_id]='" + group_id + "' and page_name = '" + page_current + "'";
            string role = func.firesql(sql);

            if (role == "")
            {
                Response.Redirect("/admin/home.aspx");
            }
        }

此虚空与我合作,但我现在需要登录后检查用户组和包含的Web表单,并仅显示允许用户访问和隐藏菜单中其他窗口的Web表单。

如何在登录后进行此操作并显示仅授予Web表单并从菜单中隐藏其他Web表单?

答案

首先为所有Web表单创建母版页

将每个页面划分为类别或角色

<div id="rol1" runat="server"> 
<page1>
<page2>
<page3>
</div>

<div id="rol2" runat="server"> 
<page1>
<page2>
<page3>
</div>

Or Second Way 
Create UserControls based On role

Role Admin
page1,page2..

Role User
page3,page...

用户控件更易于访问..

以上是关于如果用户没有权限,如何在登录后从菜单中隐藏Web表单?的主要内容,如果未能解决你的问题,请参考以下文章

如何隐藏其子项被隐藏的菜单?

如何用Delphi在登录界面设置主界面的菜单权限

前端的权限控制

若依切账号如何去掉提示当前操作没有权限

如何不允许编辑,但仍然允许隐藏列/行

java如何做权限管理