Authentication service interfaces and classes. Custom authentication implementations can be created by extending the {@link AuthProvider} interface.