【问题标题】:How to differentiate between the Visitor and User of the system?如何区分系统的访问者和用户?
【发布时间】:2013-01-02 17:31:35
【问题描述】:

我是一名新的 ASP.NET 开发人员,我在上面做了两个项目。现在,我正在开发一个简单的 Intranet 培训开发基于 Web 的应用程序,其中我有三个不同的角色:管理员、贡献者和用户。它们之间的区别在于,在 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 角色的方式似乎在这里不起作用。因为访问者将能够像我部门中具有用户角色的任何员工一样查看大部分页面。

如何区分两者?

更新:

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

【问题讨论】:

    标签: c# asp.net user-controls


    【解决方案1】:

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

    【讨论】:

    • 是的,会员制绝对是必经之路。此外,它还可以让您区分网站的登录访问者和匿名访问者。
    • 感谢您的帮助,但请您阅读我更新的问题。
    • 如果您自己推出了自己的产品,那么您需要将角色的概念添加到您的安全模型中。您可能会想到的一件事是使用 Active Directory 组为您执行此操作,因为您使用的是 Windows 身份验证。
    【解决方案2】:

    如果还不算太晚,或者对于其他任何人,请检查:

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

    【讨论】:

      猜你喜欢
      • 2016-09-11
      • 1970-01-01
      • 1970-01-01
      • 2023-03-24
      • 2019-07-07
      • 2017-07-17
      • 1970-01-01
      • 2017-06-20
      • 1970-01-01
      相关资源
      最近更新 更多