AEM6.3 providing access to group for a particular component on a page on author

Avatar

Avatar

srinivas_chann1

Avatar

srinivas_chann1

srinivas_chann1

16-07-2020

Hi,

 

Could some one help me the below query

 

On Author if there is any way that on page where there are many custom components are available.I mean the components   that at code level will under /apps/project

 

For a specific component  on that page how to restrict the edit access to a particular  group .

 

So that users of that particular group can edit the dialog where as for other users the dialog appears hidden or in disabled state

 

Thanks

Accepted Solutions (1)

Accepted Solutions (1)

Avatar

Avatar

Arun_Patidar

MVP

Total Posts

3.0K

Likes

1.1K

Correct Reply

859

Avatar

Arun_Patidar

MVP

Total Posts

3.0K

Likes

1.1K

Correct Reply

859
Arun_Patidar
MVP

16-07-2020

Please check this article I have written for same

https://aemlab.blogspot.com/2018/11/aem-restrict-component-editing-and.html

 

In component Model you can write a check or you can write a filter as well, if you have more than one component.

 

try {
   boolean decoration=false;
   User currentUser = request.getResourceResolver().adaptTo(User.class);
   
   if(currentUser.isAdmin())
    return;
   
   Iterator<Group> currentUserGroups = currentUser.memberOf();

   while (currentUserGroups.hasNext()) {
    Group grp = (Group) currentUserGroups.next();
    if(grp.getID().equals(GROUP)) {
     decoration =true;
     return;
    }
   }

   ComponentContext cc = WCMUtils.getComponentContext(request);
   cc.setDecorate(decoration);
  } catch (Exception e) {
   // TODO Auto-generated catch block
   e.printStackTrace();
   logger.info(e.getMessage());
  }

Answers (1)

Answers (1)

Avatar

Avatar

vanegi

Employee

Avatar

vanegi

Employee

vanegi
Employee

16-07-2020

This can be done by just removing permissions of that component for those particular users, you can do groups segregation and add users on those groups ,which has permission to access those components.

 

Capture.JPG