Radiator Server Documentation — v10.34.2
Table of Contents

aaa

The aaa block defines Authentication, Authorization, and Accounting policies for incoming requests. Select the protocol at policy level with named constants such as protocol.RADIUS, protocol.HTTP, protocol.MANAGEMENT, protocol.TACACS_PLUS, or protocol.DIAMETER. Handler conditions select requests within the policy.

Unless the server names a policy, Radiator Server:

  1. Evaluates policies in the order they appear in the AAA block
  2. Selects the first policy with matching conditions
  3. Processes the request using the first matching handler in that policy

If no handler matches, request processing stops without trying another policy.

Example

aaa {
    policy "AUTHENTICATION_POLICY" {
        conditions all {
            aaa.protocol == protocol.RADIUS;
            radius.request.code == radius.ACCESS_REQUEST;
        }

        handler "LOCAL_AUTH" {
            # Authentication logic
        }
    }

    policy "ACCOUNTING_POLICY" {
        conditions all {
            aaa.protocol == protocol.RADIUS;
            radius.request.code == radius.ACCOUNTING_REQUEST;
        }

        handler "ACCOUNTING" {
            # Accounting logic
        }
    }
}