Skip to content

module Athena::Security::Authorization::Strategy::Interface #

Turns the votes of the voters into the decision of an ASEC::Authorization::AccessDecisionManager.

Direct including types

Athena::Security::Authorization::Strategy::Affirmative Athena::Security::Authorization::Strategy::Consensus Athena::Security::Authorization::Strategy::Priority Athena::Security::Authorization::Strategy::Unanimous

Methods#

abstract #decide(results : Iterator(ASEC::Authorization::Voter::Access), access_decision : ASEC::Authorization::AccessDecision | Nil = nil) : Bool#

Returns true if the access is granted based on the provided results, otherwise false.

The results are lazy: each voter only votes once its result is read, so a strategy can stop reading them as soon as its decision is known.

View source

abstract #to_s(io : IO) : Nil#

Writes the name of this strategy to the provided io.

View source