如何区分系统的访客和用户?

时间:2012-06-27 13:05:22

标签: c# asp.net user-controls

我是一名新的ASP.NET开发人员,我在其上做了两个项目。现在,我正在开发一个简单的Intranet培训开发基于Web的应用程序,我有三个不同的角色:Admin,Contribute和User。所有这些之间的区别在于,在Admin和Contribute的情况下会出现一个新的菜单选项卡。我通过将菜单栏设置为用户控件并为角色创建了属性来显示特定每个角色的选项卡。

用户控件的代码(菜单标签)(。ascx文件):

<ul class="menu" runat="server" >
                    <li><a href="Default.aspx">Home</a></li>
                    <li><a href="Services.aspx">Services</a>
                        <ul>
                            <li><a href="Quiz.aspx">Quiz Engine</a></li>
                            <li><a href="Suggestion.aspx">Safety Suggestions Box</a></li>
                            <li><a href="#">PMOD Saftey Management System</a></li>
                        </ul>
                    </li>
                    <li><a href="BeSafe.aspx">Be Safe !</a>
                        <ul>        
                            <li><a href="Newsletter.aspx">Newsletter</a></li>
                            <li><a href="Library.aspx">PSSP Library</a></li>
                            <li><a href="Links.aspx">Useful Links</a></li>
                        </ul>
                    </li>

                    <li><a href="UserProfile.aspx">Profile</a></li>

                    <li><a href="About.aspx">About</a></li>
                    <li><a href="Contact.aspx">Contact Us</a></li>
                    <li><a href="Faq.aspx">FAQ</a></li>
                    <li><a href="Help.aspx">Help</a></li>

                    <li id="menuItem1ToHide" runat="server"><a href="Admin.aspx">Admin</a>
                    </li>

                    <li id="menuItem2ToHide" runat="server"><a href="Contribute.aspx">Settings</a>
                        <ul>        
                            <li><a href="KPIReport.aspx">PMOD Safety Training Detailed Matrix</a></li>
                            <li><a href="UpdateKPIReport.aspx">Update Safety Training Matrix</a></li>
                        </ul>
                    </li>

                    <li id="menuItem3ToHide" runat="server"><a href="Contribute.aspx">Management</a>
                        <ul>
                            <li><a href="Dashboard.aspx">Department Dashboard</a></li>
                            <li><a href="KPIReport.aspx">PMOD Safety Training Detailed Matrix</a></li>
                        </ul>
                    </li>

                </ul>

系统只能由我的部门员工访问。现在,他们让我让所有人都可以访问它,而不向他们展示包含分区数据的真实功能。我很困惑我将如何开发这个,因为我用于Admin和Contribute角色的方式似乎在这里不起作用。因为访问者将能够像我的部门中具有用户角色的任何员工一样查看大多数页面。

如何区分这两者?

更新

我正在开发一个基于Web的Intranet应用程序,所以我使用的是Windows身份验证,我已经开发了用户管理子系统,而不是使用ASP.NET Membership。

2 个答案:

答案 0 :(得分:3)

您需要熟悉ASP.NET Membership,然后您才能准确了解如何区分具有不同角色的用户。

答案 1 :(得分:0)

如果不是太晚,或者对其他人,请检查:

http://www.aspnettutorials.com/tutorials/navigation/role-based-permissions-asp4.aspx