List of usage examples for com.liferay.portal.kernel.security.permission PermissionChecker getUser
public User getUser();
From source file:com.liferay.document.library.web.internal.portlet.action.GetFileActionHelper.java
License:Open Source License
protected void processPrincipalException(Throwable t, HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException { ThemeDisplay themeDisplay = (ThemeDisplay) request.getAttribute(WebKeys.THEME_DISPLAY); PermissionChecker permissionChecker = themeDisplay.getPermissionChecker(); User user = permissionChecker.getUser(); if ((user != null) && !user.isDefaultUser()) { PortalUtil.sendError(HttpServletResponse.SC_UNAUTHORIZED, (Exception) t, request, response); return;/*from ww w.j av a 2 s . co m*/ } String redirect = PortalUtil.getPathMain() + "/portal/login"; String currentURL = PortalUtil.getCurrentURL(request); redirect = HttpUtil.addParameter(redirect, "redirect", currentURL); response.sendRedirect(redirect); }
From source file:com.liferay.exportimport.staging.StagingImpl.java
License:Open Source License
@Override public long copyRemoteLayouts(long sourceGroupId, boolean privateLayout, Map<Long, Boolean> layoutIdMap, String name, Map<String, String[]> parameterMap, String remoteAddress, int remotePort, String remotePathContext, boolean secureConnection, long remoteGroupId, boolean remotePrivateLayout) throws PortalException { validateRemoteGroup(sourceGroupId, remoteGroupId, remoteAddress, remotePort, remotePathContext, secureConnection);/*from ww w. j a v a 2 s .com*/ PermissionChecker permissionChecker = PermissionThreadLocal.getPermissionChecker(); User user = permissionChecker.getUser(); Map<String, Serializable> publishLayoutRemoteSettingsMap = ExportImportConfigurationSettingsMapFactory .buildPublishLayoutRemoteSettingsMap(user.getUserId(), sourceGroupId, privateLayout, layoutIdMap, parameterMap, remoteAddress, remotePort, remotePathContext, secureConnection, remoteGroupId, remotePrivateLayout, user.getLocale(), user.getTimeZone()); ExportImportConfiguration exportImportConfiguration = null; if (Validator.isNotNull(name)) { exportImportConfiguration = _exportImportConfigurationLocalService.addDraftExportImportConfiguration( user.getUserId(), name, ExportImportConfigurationConstants.TYPE_PUBLISH_LAYOUT_REMOTE, publishLayoutRemoteSettingsMap); } else { exportImportConfiguration = _exportImportConfigurationLocalService.addDraftExportImportConfiguration( user.getUserId(), ExportImportConfigurationConstants.TYPE_PUBLISH_LAYOUT_REMOTE, publishLayoutRemoteSettingsMap); } return doCopyRemoteLayouts(exportImportConfiguration, remoteAddress, remotePort, remotePathContext, secureConnection, remotePrivateLayout); }
From source file:com.liferay.exportimport.staging.StagingImpl.java
License:Open Source License
@Override public String getRemoteSiteURL(Group stagingGroup, boolean privateLayout) throws PortalException { if (!stagingGroup.isStagedRemotely()) { return StringPool.BLANK; }/*from w ww .j av a 2 s .c o m*/ PermissionChecker permissionChecker = PermissionThreadLocal.getPermissionChecker(); User user = permissionChecker.getUser(); UnicodeProperties typeSettingsProperties = stagingGroup.getTypeSettingsProperties(); HttpPrincipal httpPrincipal = new HttpPrincipal(buildRemoteURL(typeSettingsProperties), user.getLogin(), user.getPassword(), user.getPasswordEncrypted()); long remoteGroupId = GetterUtil.getLong(typeSettingsProperties.getProperty("remoteGroupId")); boolean secureConnection = GetterUtil.getBoolean(typeSettingsProperties.getProperty("secureConnection")); String groupDisplayURL = GroupServiceHttp.getGroupDisplayURL(httpPrincipal, remoteGroupId, privateLayout, secureConnection); try { URL remoteSiteURL = new URL(groupDisplayURL); String remoteAddress = typeSettingsProperties.getProperty("remoteAddress"); remoteSiteURL = new URL(remoteSiteURL.getProtocol(), remoteAddress, remoteSiteURL.getPort(), remoteSiteURL.getFile()); return remoteSiteURL.toString(); } catch (MalformedURLException murle) { throw new PortalException(murle); } }
From source file:com.liferay.exportimport.staging.StagingImpl.java
License:Open Source License
protected long doCopyRemoteLayouts(ExportImportConfiguration exportImportConfiguration, String remoteAddress, int remotePort, String remotePathContext, boolean secureConnection, boolean remotePrivateLayout) throws PortalException { Map<String, Serializable> settingsMap = exportImportConfiguration.getSettingsMap(); Map<String, String[]> parameterMap = (Map<String, String[]>) settingsMap.get("parameterMap"); String backgroundTaskName = MapUtil.getString(parameterMap, "name", exportImportConfiguration.getName()); Map<String, Serializable> taskContextMap = new HashMap<>(); taskContextMap.put("exportImportConfigurationId", exportImportConfiguration.getExportImportConfigurationId()); String remoteURL = buildRemoteURL(remoteAddress, remotePort, remotePathContext, secureConnection); PermissionChecker permissionChecker = PermissionThreadLocal.getPermissionChecker(); User user = permissionChecker.getUser(); HttpPrincipal httpPrincipal = new HttpPrincipal(remoteURL, user.getLogin(), user.getPassword(), user.getPasswordEncrypted()); taskContextMap.put("httpPrincipal", httpPrincipal); taskContextMap.put("privateLayout", remotePrivateLayout); BackgroundTask backgroundTask = _backgroundTaskManager.addBackgroundTask(user.getUserId(), exportImportConfiguration.getGroupId(), backgroundTaskName, BackgroundTaskExecutorNames.LAYOUT_REMOTE_STAGING_BACKGROUND_TASK_EXECUTOR, taskContextMap, new ServiceContext()); return backgroundTask.getBackgroundTaskId(); }
From source file:com.liferay.exportimport.staging.StagingImpl.java
License:Open Source License
protected void validateRemoteGroup(long groupId, long remoteGroupId, String remoteAddress, int remotePort, String remotePathContext, boolean secureConnection) throws PortalException { if (remoteGroupId <= 0) { RemoteOptionsException roe = new RemoteOptionsException(RemoteOptionsException.REMOTE_GROUP_ID); roe.setRemoteGroupId(remoteGroupId); throw roe; }/*from w ww .ja va2 s. c om*/ Thread currentThread = Thread.currentThread(); ClassLoader contextClassLoader = currentThread.getContextClassLoader(); PermissionChecker permissionChecker = PermissionThreadLocal.getPermissionChecker(); User user = permissionChecker.getUser(); String remoteURL = buildRemoteURL(remoteAddress, remotePort, remotePathContext, secureConnection); HttpPrincipal httpPrincipal = new HttpPrincipal(remoteURL, user.getLogin(), user.getPassword(), user.getPasswordEncrypted()); try { currentThread.setContextClassLoader(PortalClassLoaderUtil.getClassLoader()); // Ping the remote host and verify that the remote group exists in // the same company as the remote user GroupServiceHttp.checkRemoteStagingGroup(httpPrincipal, remoteGroupId); // Ensure that the local group and the remote group are not the same // group and that they are either both company groups or both not // company groups Group group = _groupLocalService.getGroup(groupId); Group remoteGroup = GroupServiceHttp.getGroup(httpPrincipal, remoteGroupId); if (group.isCompany() ^ isCompanyGroup(httpPrincipal, remoteGroup)) { RemoteExportException ree = new RemoteExportException(RemoteExportException.INVALID_GROUP); ree.setGroupId(remoteGroupId); throw ree; } } catch (NoSuchGroupException nsge) { // LPS-52675 if (_log.isDebugEnabled()) { _log.debug(nsge, nsge); } RemoteExportException ree = new RemoteExportException(RemoteExportException.NO_GROUP); ree.setGroupId(remoteGroupId); throw ree; } catch (PrincipalException pe) { // LPS-52675 if (_log.isDebugEnabled()) { _log.debug(pe, pe); } RemoteExportException ree = new RemoteExportException(RemoteExportException.NO_PERMISSIONS); ree.setGroupId(remoteGroupId); throw ree; } catch (RemoteAuthException rae) { // LPS-52675 if (_log.isDebugEnabled()) { _log.debug(rae, rae); } rae.setURL(remoteURL); throw rae; } catch (SystemException se) { // LPS-52675 if (_log.isDebugEnabled()) { _log.debug(se, se); } RemoteExportException ree = new RemoteExportException(RemoteExportException.BAD_CONNECTION, se.getMessage()); ree.setURL(remoteURL); throw ree; } finally { currentThread.setContextClassLoader(contextClassLoader); } }
From source file:com.liferay.product.navigation.product.menu.web.internal.product.navigation.control.panel.ProductMenuProductNavigationControlPanelEntry.java
License:Open Source License
@Override protected boolean hasPermissionImplicitlyGranted(PermissionChecker permissionChecker, Group group, Portlet portlet) throws Exception { User user = permissionChecker.getUser(); if (permissionChecker.isSignedIn() && user.isSetupComplete()) { return true; }//from w w w. j a va2 s.co m return false; }
From source file:com.liferay.roles.admin.internal.exportimport.data.handler.RoleStagedModelDataHandler.java
License:Open Source License
protected void importResourcePermissions(PortletDataContext portletDataContext, Role importedRole, Permission permission) throws PortalException { int scope = permission.getScope(); if (scope == ResourceConstants.SCOPE_COMPANY) { _resourcePermissionService.addResourcePermission(portletDataContext.getCompanyGroupId(), portletDataContext.getCompanyId(), permission.getName(), scope, String.valueOf(portletDataContext.getCompanyId()), importedRole.getRoleId(), permission.getActionId()); } else if (scope == ResourceConstants.SCOPE_GROUP) { long groupId = portletDataContext.getCompanyGroupId(); long primaryKey = groupId; long sourceGroupId = GetterUtil.getLong(permission.getPrimKey()); if (sourceGroupId == portletDataContext.getSourceUserPersonalSiteGroupId()) { PermissionChecker permissionChecker = PermissionThreadLocal.getPermissionChecker(); User user = permissionChecker.getUser(); groupId = user.getGroupId(); primaryKey = portletDataContext.getUserPersonalSiteGroupId(); }/* w ww.j a v a 2 s . co m*/ _resourcePermissionService.addResourcePermission(groupId, portletDataContext.getCompanyId(), permission.getName(), ResourceConstants.SCOPE_GROUP, String.valueOf(primaryKey), importedRole.getRoleId(), permission.getActionId()); } else if (scope == ResourceConstants.SCOPE_GROUP_TEMPLATE) { _resourcePermissionService.addResourcePermission(GroupConstants.DEFAULT_PARENT_GROUP_ID, portletDataContext.getCompanyId(), permission.getName(), ResourceConstants.SCOPE_GROUP_TEMPLATE, String.valueOf(GroupConstants.DEFAULT_PARENT_GROUP_ID), importedRole.getRoleId(), permission.getActionId()); } else { if (_log.isDebugEnabled()) { _log.debug("Individually scoped permissions are not imported"); } } }
From source file:com.liferay.sync.internal.messaging.DLSyncEventMessageListener.java
License:Open Source License
protected void setUser(SyncDLObject syncDLObject) { PermissionChecker permissionChecker = PermissionThreadLocal.getPermissionChecker(); if (permissionChecker != null) { User user = permissionChecker.getUser(); syncDLObject.setUserId(user.getUserId()); syncDLObject.setUserName(user.getFullName()); }//from w ww. j av a 2s . c o m }