我需要启用Web应用程序的登录用户才能代表其他用户执行某些功能。
例如,假设我以餐馆老板的身份登录,我想做一些餐厅经理的工作。
我应该能够在登录餐馆老板的同时获得餐厅经理的登陆页面。该应用程序是使用grails构建的,如果你们都可以分享你的想法和想法,这将是一个很好的帮助。
答案 0 :(得分:1)
如果使用标准的spring-security-core插件实现身份验证和用户管理,则会提供"switch user" function来处理这种情况。
<sec:ifLoggedIn>
Logged in as <sec:username/>
</sec:ifLoggedIn>
<sec:ifSwitched>
<a href='${request.contextPath}/j_spring_security_exit_user'>
Resume as <sec:switchedUserOriginalUsername/>
</a>
</sec:ifSwitched>
<sec:ifNotSwitched>
<sec:ifAllGranted roles='ROLE_SWITCH_USER'>
<form action='${request.contextPath}/j_spring_security_switch_user' method='POST'>
Switch to user: <input type='text' name='j_username'/><br/>
<input type='submit' value='Switch'/>
</form>
</sec:ifAllGranted>
</sec:ifNotSwitched>