Пример аутентификации пользователя в фреймворке scala lift
Привет, я новичок в Lift Framework.
Я хочу знать, как я могу выполнить аутентификацию пользователя, как мы это делали в сервлете Java, где мы проверяли, вошел ли пользователь в систему или перенаправил его на страницу входа.
Как я могу сделать аналогичную вещь в рамках лифта?
Ниже приведен мой пример кода в фильтре сервлетов, я хочу эквивалент в рамках лифта.
@Override
public void doFilter(ServletRequest req, ServletResponse res,
FilterChain chain) throws IOException, ServletException {
//This filter checks whether user has logged in if not redirect to him to single sign on page.
//If user has logged in already then we could get his information using Agent API
HttpServletRequest request = (HttpServletRequest) req;
HttpServletResponse response = (HttpServletResponse) res;
Agent agent = new Agent(inputStream);
String encodedSiteUrl = getUrl(request);
request.getSession(true);
Map<String,String> userInfo = agent.readToken(request);
if (userInfo != null) { //Check if used has logged in, if yes then get his id and save it in session
String userid = (String)userInfo.get(Agent.TOKEN_SUBJECT);
logger.info("Login Userid:" + userid);
request.getSession().setAttribute("Username", userid);
} else {//if user did not login the redirect to Single sign on page
response.sendRedirect(ssoRediretURL + encodedSiteUrl);
}
}