Interface CustomAuthorization

All Known Implementing Classes:
AlwaysFail, FreeIPAAz, GithubTeamRule, JavaScriptAz, ManagerAuthorization, RBACAuthorization, RBACBindingAuthorization, UserHasSessionAz

public interface CustomAuthorization
  • Method Details

    • init

      void init(Map<String,Attribute> config) throws AzException
      Initializes the custom AZ rule with the configuration
      Parameters:
      config - Name/Value pairs
      Throws:
      AzException
    • loadConfigManager

      void loadConfigManager(ConfigManager cfg) throws AzException
      Sets the config manager for access to Unison resources, run on each de-serialization
      Parameters:
      cfg -
      Throws:
      AzException
    • setWorkflow

      void setWorkflow(Workflow wf) throws AzException
      Sets the workflow this rule will be a part of. Called after cloning an instance of the rule for a particular workflow
      Parameters:
      wf -
      Throws:
      AzException
    • isAuthorized

      boolean isAuthorized(AuthInfo subject, String... params) throws AzException
      Determines if the subject in the parameter is authorized by this rule
      Parameters:
      subject - Subject to be tested
      params - List of optional values specific to this call
      Returns:
      True if authorized, False if not
      Throws:
      AzException
    • listPossibleApprovers

      List<String> listPossibleApprovers(String... params) throws AzException
      Provides a list of subjects that could be authorized based on this rule. The value of each list item should be the distinguished name of the user in Unison
      Parameters:
      params - List of optional values specific to this call
      Returns:
      Throws:
      AzException
    • getWorkflow

      Workflow getWorkflow()
      Return ths current workflow
      Returns: