我有一个多用户 Web 应用程序。如果管理员登录,则启用所有菜单。如果用户登录,则只允许使用有限的功能。
当某项任务需要用户注意时(例如分配给新项目),管理员会向用户发送一封带有正确页面 URL 的邮件。然后,用户可以导航到该页面(无需任何凭据)并采取必要的操作。
现在的问题是 - 当管理员登录系统时,会触发给用户的邮件,如果他没有注销。用户单击在另一个选项卡(IE/Chrome)或同一页面上打开页面的链接(在电子邮件中),用户可以看到管理员可用的所有选项。
虽然这不是一个以生产为中心的问题,但我在我的客户端演示中发现了这种安全漏洞。
此外,管理员和用户可以通过适当的菜单项访问用户尝试访问的页面。这限制了我在页面加载时设置一些条件。
现在,无论谁已经登录,我如何限制用户只看到允许他使用的选项?