1
22
23 package com.liferay.portal.security.auth;
24
25 import com.liferay.portal.model.User;
26 import com.liferay.portal.service.UserLocalServiceUtil;
27 import com.liferay.portal.util.OpenIdUtil;
28 import com.liferay.portal.util.PortalUtil;
29 import com.liferay.portal.util.WebKeys;
30
31 import javax.servlet.http.HttpServletRequest;
32 import javax.servlet.http.HttpServletResponse;
33 import javax.servlet.http.HttpSession;
34
35 import org.apache.commons.logging.Log;
36 import org.apache.commons.logging.LogFactory;
37
38
44 public class OpenIdAutoLogin implements AutoLogin {
45
46 public String[] login(
47 HttpServletRequest request, HttpServletResponse response) {
48
49 String[] credentials = null;
50
51 try {
52 long companyId = PortalUtil.getCompanyId(request);
53
54 if (!OpenIdUtil.isEnabled(companyId)) {
55 return credentials;
56 }
57
58 HttpSession session = request.getSession();
59
60 Long userId = (Long)session.getAttribute(WebKeys.OPEN_ID_LOGIN);
61
62 if (userId == null) {
63 return credentials;
64 }
65
66 session.removeAttribute(WebKeys.OPEN_ID_LOGIN);
67
68 User user = UserLocalServiceUtil.getUserById(
69 userId.longValue());
70
71 credentials = new String[3];
72
73 credentials[0] = String.valueOf(user.getUserId());
74 credentials[1] = user.getPassword();
75 credentials[2] = Boolean.TRUE.toString();
76 }
77 catch (Exception e) {
78 _log.error(e.getMessage());
79 }
80
81 return credentials;
82 }
83
84 private static Log _log = LogFactory.getLog(OpenIdAutoLogin.class);
85
86 }