Package org.apache.storm.security.auth

# Interface IAuthorizer

All Known Implementing Classes:
  `DenyAuthorizer`, `DRPCAuthorizerBase`, `DRPCSimpleACLAuthorizer`, `ImpersonationAuthorizer`, `NoopAuthorizer`, `SimpleACLAuthorizer`, `SimpleWhitelistAuthorizer`, `SupervisorSimpleACLAuthorizer`

public interface IAuthorizer
Nimbus could be configured with an authorization plugin. If not specified, all requests are authorized.

You could specify the authorization plugin via storm parameter. For example:

``` storm -c nimbus.authorization.class=org.apache.storm.security.auth.NoopAuthorizer ... ```

You could also specify it via storm.yaml:

```yaml nimbus.authorization.class: org.apache.storm.security.auth.NoopAuthorizer ```

- ## Method Summary

  Modifier and Type
  Method
  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.

- ## Method Details

  - ### prepare

    void prepare(Map<String,Object> conf)
    Invoked once immediately after construction.
    Parameters:
      `conf` - Storm cluster configuration

  - ### permit

    boolean permit(ReqContext context, String operation, Map<String,Object> topoConf)
    permit() method is invoked for each incoming Thrift request.
    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