【发布时间】:2018-07-19 12:48:16
【问题描述】:
如果您使用过 Gitlab - 它具有模拟功能,如果您的用户具有“所有者”角色,则可以通过单击按钮“模拟”系统上创建的任何用户并查看他们看到的内容。
我想了解如何实现这样的功能?它的软件设计/架构是什么。
我计划使用服务器端会话在 Java、Spring 和 Tomcat 中设计和实现此功能,并且更愿意推出我自己的模拟功能而不是使用库
【问题讨论】:
标签: java spring tomcat impersonation
如果您使用过 Gitlab - 它具有模拟功能,如果您的用户具有“所有者”角色,则可以通过单击按钮“模拟”系统上创建的任何用户并查看他们看到的内容。
我想了解如何实现这样的功能?它的软件设计/架构是什么。
我计划使用服务器端会话在 Java、Spring 和 Tomcat 中设计和实现此功能,并且更愿意推出我自己的模拟功能而不是使用库
【问题讨论】:
标签: java spring tomcat impersonation
如果您想要 GitLab 在 Ruby 中实现的特定解决方案,您可以查看引入该功能的提交:Commit 3bb626f9 - refactor login as to be impersonation with better login/logout
请注意,此提交中引入的安全问题稍后已修复:GitLab Blog Post - Critical Security Release for GitLab 8.2 through 8.7
否则,我认为这个问题太宽泛了。 我需要更多细节 - 框架、当前身份验证机制等。
编辑: 我不太了解 Java Spring 框架,但这些链接可能会对您有所帮助:
【讨论】: