org.apache.storm.security.auth.authorizer

## Class SimpleACLAuthorizer

- java.lang.Object
- - org.apache.storm.security.auth.authorizer.SimpleACLAuthorizer

- All Implemented Interfaces:
    IAuthorizer

      public class SimpleACLAuthorizer
      extends Object
      implements IAuthorizer

  An authorization implementation that simply checks if a user is allowed to perform specific operations.

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `protected Set<String>` | `admins`
    `protected Set<String>` | `adminsGroups`
    `protected IGroupMappingServiceProvider` | `groupMappingServiceProvider`
    `protected Set<String>` | `nimbusGroups`
    `protected Set<String>` | `nimbusUsers`
    `protected IPrincipalToLocal` | `ptol`
    `protected Set<String>` | `supervisorCommands`
    `protected Set<String>` | `supervisors`
    `protected Set<String>` | `topoCommands`
    `protected Set<String>` | `topoReadOnlyCommands`
    `protected Set<String>` | `userCommands`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `SimpleACLAuthorizer()`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `boolean` | `permit(ReqContext context, String operation, Map<String,Object> topoConf)` permit() method is invoked for each incoming Thrift request.
    `void` | `prepare(Map<String,Object> conf)` Invoked once immediately after construction.

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Field Detail

    - #### userCommands

          protected Set<String> userCommands

    - #### supervisorCommands

          protected Set<String> supervisorCommands

    - #### topoReadOnlyCommands

          protected Set<String> topoReadOnlyCommands

    - #### topoCommands

          protected Set<String> topoCommands

    - #### admins

          protected Set<String> admins

    - #### adminsGroups

          protected Set<String> adminsGroups

    - #### supervisors

          protected Set<String> supervisors

    - #### nimbusUsers

          protected Set<String> nimbusUsers

    - #### nimbusGroups

          protected Set<String> nimbusGroups

    - #### ptol

          protected IPrincipalToLocal ptol

    - #### groupMappingServiceProvider

          protected IGroupMappingServiceProvider groupMappingServiceProvider

  - ### Constructor Detail

    - #### SimpleACLAuthorizer

          public SimpleACLAuthorizer()

  - ### Method Detail

    - #### prepare

          public void prepare(Map<String,Object> conf)

      Invoked once immediately after construction.

      Specified by:
        `prepare` in interface `IAuthorizer`
      Parameters:
        `conf` - Storm configuration

    - #### permit

          public boolean permit(ReqContext context,
                                String operation,
                                Map<String,Object> topoConf)

      permit() method is invoked for each incoming Thrift request.

      Specified by:
        `permit` in interface `IAuthorizer`
      Parameters:
        `context` - request context includes info about
        `operation` - operation name
        `topoConf` - configuration of targeted topology
      Returns:
        true if the request is authorized, false if reject

Copyright © 2021 The Apache Software Foundation. All rights reserved.