Search in sources :

Example 6 with Action

use of com.thinkbiganalytics.security.rest.model.Action in project kylo by Teradata.

the class SecurityModelTransform method addHierarchy.

// 
// public void addAction(PermissionsChange change, com.thinkbiganalytics.security.action.Action domainAction) {
// ActionGroup actionSet = new ActionGroup("");
// addHierarchy(actionSet, domainAction.getHierarchy().iterator());
// }
private void addHierarchy(ActionGroup actionSet, Iterator<com.thinkbiganalytics.security.action.Action> itr) {
    if (itr.hasNext()) {
        com.thinkbiganalytics.security.action.Action domainAction = itr.next();
        Action subAction = actionSet.getAction(domainAction.getSystemName()).map(sa -> sa).orElseGet(() -> {
            Action newAction = new Action(domainAction.getSystemName());
            actionSet.addAction(newAction);
            return newAction;
        });
        addHierarchy(subAction, itr);
    }
}
Also used : EntityAccessControl(com.thinkbiganalytics.security.rest.model.EntityAccessControl) Role(com.thinkbiganalytics.security.rest.model.Role) HashMap(java.util.HashMap) GroupPrincipal(com.thinkbiganalytics.security.GroupPrincipal) Function(java.util.function.Function) AllowedActions(com.thinkbiganalytics.security.action.AllowedActions) HashSet(java.util.HashSet) Inject(javax.inject.Inject) Lists(com.google.common.collect.Lists) UserGroup(com.thinkbiganalytics.security.rest.model.UserGroup) SecurityRole(com.thinkbiganalytics.security.role.SecurityRole) Map(java.util.Map) UserService(com.thinkbiganalytics.security.service.user.UserService) User(com.thinkbiganalytics.security.rest.model.User) AllowableAction(com.thinkbiganalytics.security.action.AllowableAction) ChangeType(com.thinkbiganalytics.security.rest.model.PermissionsChange.ChangeType) PermissionsChange(com.thinkbiganalytics.security.rest.model.PermissionsChange) Iterator(java.util.Iterator) UsernamePrincipal(com.thinkbiganalytics.security.UsernamePrincipal) AccessControlled(com.thinkbiganalytics.metadata.api.security.AccessControlled) ActionGroup(com.thinkbiganalytics.security.rest.model.ActionGroup) Set(java.util.Set) Collectors(java.util.stream.Collectors) Action(com.thinkbiganalytics.security.rest.model.Action) List(java.util.List) RoleMembership(com.thinkbiganalytics.security.rest.model.RoleMembership) Principal(java.security.Principal) Group(java.security.acl.Group) Optional(java.util.Optional) Collections(java.util.Collections) AllowableAction(com.thinkbiganalytics.security.action.AllowableAction) Action(com.thinkbiganalytics.security.rest.model.Action)

Example 7 with Action

use of com.thinkbiganalytics.security.rest.model.Action in project kylo by Teradata.

the class EntityLevelAccessIT method grantEditFeedsToAnalysts.

private void grantEditFeedsToAnalysts() {
    LOG.debug("EntityLevelAccessIT.grantEditFeedsToAnalysts");
    runAs(ADMIN);
    Action feedsSupport = createAction(FeedServicesAccessControl.FEEDS_SUPPORT);
    Action accessFeeds = createAction(FeedServicesAccessControl.ACCESS_FEEDS);
    accessFeeds.addAction(createAction(FeedServicesAccessControl.EDIT_FEEDS));
    feedsSupport.addAction(accessFeeds);
    grantServiceActionToAnalysts(feedsSupport);
}
Also used : Action(com.thinkbiganalytics.security.rest.model.Action)

Example 8 with Action

use of com.thinkbiganalytics.security.rest.model.Action in project kylo by Teradata.

the class EntityLevelAccessIT method grantTemplateAndFeedExportToAnalysts.

private void grantTemplateAndFeedExportToAnalysts() {
    LOG.debug("EntityLevelAccessIT.grantTemplateAndFeedExportToAnalysts");
    runAs(ADMIN);
    Action feedsSupport = createAction(FeedServicesAccessControl.FEEDS_SUPPORT);
    Action accessFeeds = createAction(FeedServicesAccessControl.ACCESS_FEEDS);
    accessFeeds.addAction(createAction(FeedServicesAccessControl.EXPORT_FEEDS));
    Action accessTemplates = createAction(FeedServicesAccessControl.ACCESS_TEMPLATES);
    accessTemplates.addAction(createAction(FeedServicesAccessControl.EXPORT_TEMPLATES));
    feedsSupport.addAction(accessTemplates);
    feedsSupport.addAction(accessFeeds);
    grantServiceActionToAnalysts(feedsSupport);
}
Also used : Action(com.thinkbiganalytics.security.rest.model.Action)

Aggregations

Action (com.thinkbiganalytics.security.rest.model.Action)8 Lists (com.google.common.collect.Lists)2 AccessControlled (com.thinkbiganalytics.metadata.api.security.AccessControlled)2 GroupPrincipal (com.thinkbiganalytics.security.GroupPrincipal)2 UsernamePrincipal (com.thinkbiganalytics.security.UsernamePrincipal)2 AllowableAction (com.thinkbiganalytics.security.action.AllowableAction)2 AllowedActions (com.thinkbiganalytics.security.action.AllowedActions)2 ActionGroup (com.thinkbiganalytics.security.rest.model.ActionGroup)2 EntityAccessControl (com.thinkbiganalytics.security.rest.model.EntityAccessControl)2 PermissionsChange (com.thinkbiganalytics.security.rest.model.PermissionsChange)2 ChangeType (com.thinkbiganalytics.security.rest.model.PermissionsChange.ChangeType)2 Role (com.thinkbiganalytics.security.rest.model.Role)2 RoleMembership (com.thinkbiganalytics.security.rest.model.RoleMembership)2 User (com.thinkbiganalytics.security.rest.model.User)2 UserGroup (com.thinkbiganalytics.security.rest.model.UserGroup)2 SecurityRole (com.thinkbiganalytics.security.role.SecurityRole)2 UserService (com.thinkbiganalytics.security.service.user.UserService)2 Principal (java.security.Principal)2 Group (java.security.acl.Group)2 Collections (java.util.Collections)2