package org.apereo.cas.adaptors.radius; /** * Interface representing a Radius Server. * * @author Scott Battaglia * @author Misagh Moayyed * @since 3.1 */ public interface RadiusServer { /** The default port for accounting. * @since 4.1.0 **/ int DEFAULT_PORT_ACCOUNTING = 1813; /** The default port for authentication. * @since 4.1.0 **/ int DEFAULT_PORT_AUTHENTICATION = 1812; /** * Method to authenticate a set of credentials. * * @param username Non-null username to authenticate. * @param password Password to authenticate. * * @return {@link RadiusResponse} on success, null otherwise. * * @throws Exception On indeterminate case where authentication was prevented by a system (e.g. IO) error. */ RadiusResponse authenticate(String username, String password) throws Exception; }