Search in sources :

Example 1 with Action

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

the class SecurityModelTransform method addHierarchy.

private void addHierarchy(Action parentAction, Iterator<com.thinkbiganalytics.security.action.Action> itr) {
    if (itr.hasNext()) {
        com.thinkbiganalytics.security.action.Action domainAction = itr.next();
        Action subAction = parentAction.getAction(domainAction.getSystemName()).map(sa -> sa).orElseGet(() -> {
            Action newAction = new Action(domainAction.getSystemName());
            parentAction.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 2 with Action

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

the class EntityLevelAccessIT method grantAccessTemplatesToAnalysts.

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

Example 3 with Action

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

the class EntityLevelAccessIT method grantAccessFeedsToAnalysts.

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

Example 4 with Action

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

the class EntityLevelAccessIT method grantAdminFeedsToAnalysts.

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

Example 5 with Action

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

the class EntityLevelAccessIT method grantAccessCategoriesToAnalysts.

private void grantAccessCategoriesToAnalysts() {
    LOG.debug("EntityLevelAccessIT.grantAccessCategoriesToAnalysts");
    runAs(ADMIN);
    Action feedsSupport = createAction(FeedServicesAccessControl.FEEDS_SUPPORT);
    feedsSupport.addAction(createAction(FeedServicesAccessControl.ACCESS_CATEGORIES));
    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