001
014
015 package com.liferay.portal.security.access.control;
016
017 import com.liferay.portal.kernel.security.access.control.AccessControlled;
018 import com.liferay.portal.kernel.security.access.control.BaseAccessControlPolicy;
019 import com.liferay.portal.security.permission.PermissionChecker;
020 import com.liferay.portal.security.permission.PermissionThreadLocal;
021
022 import java.lang.reflect.Method;
023
024
030 public class AuthenticatedAccessControlPolicy extends BaseAccessControlPolicy {
031
032 @Override
033 public void onServiceRemoteAccess(
034 Method method, Object[] arguments,
035 AccessControlled accessControlled)
036 throws SecurityException {
037
038 PermissionChecker permissionChecker =
039 PermissionThreadLocal.getPermissionChecker();
040
041 if (!accessControlled.guestAccessEnabled() &&
042 ((permissionChecker == null) || !permissionChecker.isSignedIn())) {
043
044 throw new SecurityException("Authenticated access required");
045 }
046 }
047
048 }