我们正在为网站设计一项功能,该功能应允许某些员工以其他注册用户的身份查看我们的网站。 我真的很想听听已经考虑过这种功能或实现过类似功能的人的意见。
这应该是一个社区 wiki。如果可能,我会将其标记为一个。
最佳答案
我过去用过两种方法。
最简单的方法是只允许有足够权限的人以任意用户身份登录而无需密码。这只是一个 session 中的登录,完全用你假装的人取代了你是谁。您可以通过注销并再次登录回到自己身边。
另一个是在 session 中保留一个标志说“我真的是用户 ABC”,并在适当的管理页面上检查该标志(该机制是无关紧要的,但通常可以巧妙地完成,并且在大多数框架中基本上是不可见的)但是将 session 用户切换为用户 XYZ。将使用与第一个相同的“跳过密码”机制。
后者更复杂,但避免了注销/登录的需要,并允许一些不错的技巧,比如在 iframe 中运行网站并保持管理菜单可见以“退出”特殊模式等。
关于authentication - 你将如何实现 "view site as a different user"功能?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10836722/