Radiator Server Documentation — v10.34.2

@post_execute

Execution pipeline which is executed after the main @execute pipeline. This is executed regardless of whether the main @execute pipeline accepted or rejected the request, but is skipped if the @pre_execute pipeline rejected the request.

Note: The @ prefix is required for pipeline blocks. The legacy syntax without @ (e.g., post_execute {}) is deprecated and emits warnings. Use @post_execute {} for new configurations.

Result of this pipeline is ignored; it cannot change the outcome of the request. However, it can modify the reply attributes, log information, or perform other side effects.

aaa.result exposes the corresponding @execute pipeline result here. Use "%{aaa.result}" to compare its lowercase name; direct access is numeric.

See also

Example

logging {
    aaa {
        logger "EVENTS" {
            console;
        }
    }
}

aaa {
    policy "RADIUS" {
        conditions all {
            aaa.protocol == protocol.RADIUS;
        }

        handler "EXAMPLE" {
            @post_execute {
                if all {
                    "%{aaa.result}" == "accept";
                } then {
                    log "EVENTS" {
                        json {
                            "message" "Request accepted";
                            "identity" aaa.identity;
                        }
                    }
                } else {
                    log "EVENTS" {
                        json {
                            "message" "Request rejected";
                            "identity" aaa.identity;
                        }
                    }
                }
            }
        }
    }
}