mirror of
https://github.com/Alfresco/alfresco-community-repo.git
synced 2025-08-14 17:58:59 +00:00
REPO-1506: Update Person - implement
- restrict rest api update person password for no authorization git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/BRANCHES/DEV/5.2.N/root@132406 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
This commit is contained in:
@@ -627,6 +627,7 @@
|
|||||||
<property name="nodeService" ref="NodeService" />
|
<property name="nodeService" ref="NodeService" />
|
||||||
<property name="personService" ref="PersonService" />
|
<property name="personService" ref="PersonService" />
|
||||||
<property name="authenticationService" ref="AuthenticationService" />
|
<property name="authenticationService" ref="AuthenticationService" />
|
||||||
|
<property name="authorityService" ref="AuthorityService" />
|
||||||
<property name="contentUsageService" ref="contentUsageImpl" />
|
<property name="contentUsageService" ref="contentUsageImpl" />
|
||||||
<property name="contentService" ref="ContentService" />
|
<property name="contentService" ref="ContentService" />
|
||||||
<property name="thumbnailService" ref="ThumbnailService" />
|
<property name="thumbnailService" ref="ThumbnailService" />
|
||||||
|
@@ -45,6 +45,7 @@ import org.alfresco.rest.api.model.Person;
|
|||||||
import org.alfresco.rest.framework.core.exceptions.ConstraintViolatedException;
|
import org.alfresco.rest.framework.core.exceptions.ConstraintViolatedException;
|
||||||
import org.alfresco.rest.framework.core.exceptions.EntityNotFoundException;
|
import org.alfresco.rest.framework.core.exceptions.EntityNotFoundException;
|
||||||
import org.alfresco.rest.framework.core.exceptions.InvalidArgumentException;
|
import org.alfresco.rest.framework.core.exceptions.InvalidArgumentException;
|
||||||
|
import org.alfresco.rest.framework.core.exceptions.PermissionDeniedException;
|
||||||
import org.alfresco.rest.framework.resource.parameters.CollectionWithPagingInfo;
|
import org.alfresco.rest.framework.resource.parameters.CollectionWithPagingInfo;
|
||||||
import org.alfresco.rest.framework.resource.parameters.Paging;
|
import org.alfresco.rest.framework.resource.parameters.Paging;
|
||||||
import org.alfresco.rest.framework.resource.parameters.Parameters;
|
import org.alfresco.rest.framework.resource.parameters.Parameters;
|
||||||
@@ -57,6 +58,7 @@ import org.alfresco.service.cmr.repository.ContentWriter;
|
|||||||
import org.alfresco.service.cmr.repository.NodeRef;
|
import org.alfresco.service.cmr.repository.NodeRef;
|
||||||
import org.alfresco.service.cmr.repository.NodeService;
|
import org.alfresco.service.cmr.repository.NodeService;
|
||||||
import org.alfresco.service.cmr.security.AuthenticationService;
|
import org.alfresco.service.cmr.security.AuthenticationService;
|
||||||
|
import org.alfresco.service.cmr.security.AuthorityService;
|
||||||
import org.alfresco.service.cmr.security.MutableAuthenticationService;
|
import org.alfresco.service.cmr.security.MutableAuthenticationService;
|
||||||
import org.alfresco.service.cmr.security.NoSuchPersonException;
|
import org.alfresco.service.cmr.security.NoSuchPersonException;
|
||||||
import org.alfresco.service.cmr.security.PersonService;
|
import org.alfresco.service.cmr.security.PersonService;
|
||||||
@@ -81,6 +83,7 @@ public class PeopleImpl implements People
|
|||||||
protected NodeService nodeService;
|
protected NodeService nodeService;
|
||||||
protected PersonService personService;
|
protected PersonService personService;
|
||||||
protected AuthenticationService authenticationService;
|
protected AuthenticationService authenticationService;
|
||||||
|
protected AuthorityService authorityService;
|
||||||
protected ContentUsageService contentUsageService;
|
protected ContentUsageService contentUsageService;
|
||||||
protected ContentService contentService;
|
protected ContentService contentService;
|
||||||
protected ThumbnailService thumbnailService;
|
protected ThumbnailService thumbnailService;
|
||||||
@@ -125,6 +128,11 @@ public class PeopleImpl implements People
|
|||||||
this.authenticationService = authenticationService;
|
this.authenticationService = authenticationService;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void setAuthorityService(AuthorityService authorityService)
|
||||||
|
{
|
||||||
|
this.authorityService = authorityService;
|
||||||
|
}
|
||||||
|
|
||||||
public void setContentUsageService(ContentUsageService contentUsageService)
|
public void setContentUsageService(ContentUsageService contentUsageService)
|
||||||
{
|
{
|
||||||
this.contentUsageService = contentUsageService;
|
this.contentUsageService = contentUsageService;
|
||||||
@@ -444,6 +452,12 @@ public class PeopleImpl implements People
|
|||||||
{
|
{
|
||||||
MutableAuthenticationService mutableAuthenticationService = (MutableAuthenticationService) authenticationService;
|
MutableAuthenticationService mutableAuthenticationService = (MutableAuthenticationService) authenticationService;
|
||||||
|
|
||||||
|
boolean isAdmin = authorityService.hasAdminAuthority();
|
||||||
|
if (!isAdmin)
|
||||||
|
{
|
||||||
|
throw new PermissionDeniedException();
|
||||||
|
}
|
||||||
|
|
||||||
final String personIdToUpdate = validatePerson(personId);
|
final String personIdToUpdate = validatePerson(personId);
|
||||||
final Map<QName, Serializable> properties = person.toProperties();
|
final Map<QName, Serializable> properties = person.toProperties();
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user