Class Option Recommendations

Below, is a list of classes that may be updated with final or abstract.
The red stars mention possible upgrade by using final or abstract keywords; The green stars mention a valid absence of the option (an extended class, that can't be final, ...); The absence of star report currently configured classes. .

Final Abstract Name Path
class ChainMessagesLoader \chainmessagesloader
class Time extends MutableDateTime implements I18nDateTimeInterface \time
class Translator extends BaseTranslator \translator
class Date extends MutableDate implements I18nDateTimeInterface \date
class TranslatorFactory extends BaseTranslatorFactory \translatorfactory
class Number \number
class PluralRules \pluralrules
class TranslatorRegistry extends TranslatorLocator \translatorregistry
class FrozenDate extends ChronosDate implements I18nDateTimeInterface \frozendate
class I18n \i18n
class MoFileParser \mofileparser
class LocaleSelectorMiddleware implements MiddlewareInterface \localeselectormiddleware
class SprintfFormatter implements FormatterInterface \sprintfformatter
class PoFileParser \pofileparser
class File \file
class IcuFormatter implements FormatterInterface \icuformatter
class BoolType extends BaseType implements BatchCastingInterface \booltype
class BinaryUuidType extends BaseType \binaryuuidtype
class DateType extends DateTimeType \datetype
class BinaryType extends BaseType \binarytype
class JsonType extends BaseType implements BatchCastingInterface \jsontype
class DateTimeFractionalType extends DateTimeType \datetimefractionaltype
class FloatType extends BaseType implements BatchCastingInterface \floattype
class TimeType extends DateTimeType \timetype
class DateTimeTimezoneType extends DateTimeType \datetimetimezonetype
class DecimalType extends BaseType implements BatchCastingInterface \decimaltype
class QueryLogger extends BaseLog \querylogger
class LoggingStatement extends StatementDecorator \loggingstatement
class LoggedQuery implements JsonSerializable \loggedquery
class FrozenTime extends Chronos implements I18nDateTimeInterface \frozentime
class RelativeTimeFormatter implements DifferenceFormatterInterface \relativetimeformatter
class MessagesFileLoader \messagesfileloader
class Router \router
class UnaryExpression implements ExpressionInterface \unaryexpression
class Asset \asset
class BetweenExpression implements ExpressionInterface, FieldInterface \betweenexpression
class RouteCollection \routecollection
class ValuesExpression implements ExpressionInterface \valuesexpression
class RouteBuilder \routebuilder
class WindowExpression implements ExpressionInterface, WindowInterface \windowexpression
class AssetMiddleware implements MiddlewareInterface \assetmiddleware
class CaseExpression implements ExpressionInterface \caseexpression
class RoutingMiddleware implements MiddlewareInterface \routingmiddleware
class AggregateExpression extends FunctionExpression implements WindowInterface \aggregateexpression
class MissingDispatcherFilterException extends Exception \missingdispatcherfilterexception
class OrderByExpression extends QueryExpression \orderbyexpression
class DuplicateNamedRouteException extends Exception \duplicatenamedrouteexception
class TupleComparison extends ComparisonExpression \tuplecomparison
class MissingRouteException extends Exception \missingrouteexception
class MissingConnectionException extends Exception \missingconnectionexception
class RedirectException extends Exception \redirectexception
class MissingExtensionException extends Exception \missingextensionexception
class EntityRoute extends Route \entityroute
class OrderClauseExpression implements ExpressionInterface, FieldInterface \orderclauseexpression
class PluginShortRoute extends InflectedRoute \pluginshortroute
class CommonTableExpression implements ExpressionInterface \commontableexpression
class RedirectRoute extends Route \redirectroute
class IntegerType extends BaseType implements BatchCastingInterface \integertype
class DashedRoute extends Route \dashedroute
class UuidType extends StringType \uuidtype
class LegacyCommandRunner \legacycommandrunner
class NestedTransactionRollbackException extends Exception \nestedtransactionrollbackexception
class TestSession \testsession
class MissingDriverException extends Exception \missingdriverexception
class TestEmailTransport extends DebugTransport \testemailtransport
class PostgresSchemaDialect extends SchemaDialect \postgresschemadialect
class MiddlewareDispatcher \middlewaredispatcher
class MysqlSchemaDialect extends SchemaDialect \mysqlschemadialect
class LegacyShellDispatcher extends ShellDispatcher \legacyshelldispatcher
class SqliteStatement extends StatementDecorator \sqlitestatement
class TestSuite extends BaseTestSuite \testsuite
class SqlserverStatement extends PDOStatement \sqlserverstatement
class FixtureInjector implements TestListener \fixtureinjector
class SqliteSchemaDialect extends SchemaDialect \sqliteschemadialect
class TestFixture implements ConstraintsInterface, FixtureInterface, TableSchemaAwareInterface \testfixture
class SqlserverSchemaDialect extends SchemaDialect \sqlserverschemadialect
class FixtureManager \fixturemanager
class CachedCollection implements CollectionInterface \cachedcollection
class EventFired extends Constraint \eventfired
class Collection implements CollectionInterface \collection
class EventFiredWith extends Constraint \eventfiredwith
class ReconnectStrategy implements RetryStrategyInterface \reconnectstrategy
class FlashParamEquals extends Constraint \flashparamequals
class Sqlserver extends Driver \sqlserver
class SessionHasKey extends Constraint \sessionhaskey
class TableSchema implements TableSchemaInterface, SqlGeneratorInterface \tableschema
class SessionEquals extends Constraint \sessionequals
class ErrorCodeWaitStrategy implements RetryStrategyInterface \errorcodewaitstrategy
class ContentsEmpty extends ContentsBase \contentsempty
class Postgres extends Driver \postgres
class ContentsContain extends ContentsBase \contentscontain
class IdentifierExpression implements ExpressionInterface \identifierexpression
class ContentsContainRow extends ContentsRegExp \contentscontainrow
class Sqlite extends Driver \sqlite
class ExitCode extends Constraint \exitcode
class Mysql extends Driver \mysql
class PluginUnloadCommand extends Command \pluginunloadcommand
class SchemacacheClearCommand extends Command \schemacacheclearcommand
class ServerCommand extends Command \servercommand
class I18nCommand extends Command \i18ncommand
class CompletionCommand extends Command implements CommandCollectionAwareInterface \completioncommand
class SchemacacheBuildCommand extends Command \schemacachebuildcommand
class CacheClearallCommand extends Command \cacheclearallcommand
class PluginLoadCommand extends Command \pluginloadcommand
class VersionCommand extends Command \versioncommand
class I18nInitCommand extends Command \i18ninitcommand
class PluginAssetsSymlinkCommand extends Command \pluginassetssymlinkcommand
class I18nExtractCommand extends Command \i18nextractcommand
class CacheListCommand extends Command \cachelistcommand
class RoutesCheckCommand extends Command \routescheckcommand
class RoutesGenerateCommand extends Command \routesgeneratecommand
class PluginAssetsRemoveCommand extends Command \pluginassetsremovecommand
class NoChildrenIterator extends Collection implements RecursiveIterator \nochildreniterator
class TreeIterator extends RecursiveIteratorIterator implements CollectionInterface \treeiterator
class TreePrinter extends RecursiveIteratorIterator implements CollectionInterface \treeprinter
class ReplaceIterator extends Collection \replaceiterator
class UnfoldIterator extends IteratorIterator implements RecursiveIterator \unfolditerator
class BufferedIterator extends Collection implements Countable, Serializable \bufferediterator
class SortIterator extends Collection \sortiterator
class InsertIterator extends Collection \insertiterator
class RoutesCommand extends Command \routescommand
class PluginAssetsCopyCommand extends Command \pluginassetscopycommand
class PluginLoadedCommand extends Command \pluginloadedcommand
class CacheClearCommand extends Command \cacheclearcommand
class MapReduce implements IteratorAggregate \mapreduce
class NestIterator extends Collection implements RecursiveIterator \nestiterator
class ExtractIterator extends Collection \extractiterator
class ZipIterator extends MultipleIterator implements CollectionInterface, Serializable \zipiterator
class Xml \xml
class SessionStorage implements StorageInterface \sessionstorage
class MemoryStorage implements StorageInterface \memorystorage
class DigestAuthenticate extends BasicAuthenticate \digestauthenticate
class ControllerAuthorize extends BaseAuthorize \controllerauthorize
  class DefaultPasswordHasher extends AbstractPasswordHasher \defaultpasswordhasher
class FormAuthenticate extends BaseAuthenticate \formauthenticate
  class WeakPasswordHasher extends AbstractPasswordHasher \weakpasswordhasher
class FilterIterator extends Collection \filteriterator
class StoppableIterator extends Collection \stoppableiterator
class OpenSsl \openssl
class XmlException extends Exception \xmlexception
class Security \security
class Text \text
class Hash \hash
class Inflector \inflector
class AuthSecurityException extends SecurityException \authsecurityexception
class MissingActionException extends Exception \missingactionexception
class ControllerFactory implements ControllerFactoryInterface \controllerfactory
class MissingComponentException extends Exception \missingcomponentexception
class ComponentRegistry extends ObjectRegistry implements EventDispatcherInterface \componentregistry
class ErrorController extends Controller \errorcontroller
class Filesystem \filesystem
class Folder \folder
class PasswordHasherFactory \passwordhasherfactory
  class FallbackPasswordHasher extends AbstractPasswordHasher \fallbackpasswordhasher
class PaginatorComponent extends Component \paginatorcomponent
class RequestHandlerComponent extends Component \requesthandlercomponent
class FlashComponent extends Component \flashcomponent
class FormProtectionComponent extends Component \formprotectioncomponent
class AuthComponent extends Component implements EventDispatcherInterface \authcomponent
class SecurityComponent extends Component \securitycomponent
class LogEngineRegistry extends ObjectRegistry \logengineregistry
class Log \log
class MissingMailerException extends Exception \missingmailerexception
class ArrayLog extends BaseLog \arraylog
class SyslogLog extends BaseLog \sysloglog
class ConsoleLog extends BaseLog \consolelog
class FileLog extends BaseLog \filelog
class Email implements JsonSerializable, Serializable \email
class TransportRegistry extends ObjectRegistry \transportregistry
class Mailer implements EventListenerInterface \mailer
class Message \message
  class MailTransport extends AbstractTransport \mailtransport
  class SmtpTransport extends AbstractTransport \smtptransport
class TransportFactory \transportfactory
class Renderer \renderer
class BehaviorRegistry extends ObjectRegistry implements EventDispatcherInterface \behaviorregistry
class SaveOptionsBuilder extends ArrayObject \saveoptionsbuilder
class AssociationCollection implements IteratorAggregate \associationcollection
class LazyEagerLoader \lazyeagerloader
class Table implements RepositoryInterface, EventListenerInterface, EventDispatcherInterface, ValidatorAwareInterface \table
class RulesChecker \ruleschecker
class Entity implements EntityInterface, InvalidPropertyInterface \entity
class EagerLoadable \eagerloadable
class HasOne extends Association \hasone
class BelongsToMany extends Association \belongstomany
class Query extends DatabaseQuery implements JsonSerializable, QueryInterface \query
class TableRegistry \tableregistry
class DependentDeleteHelper \dependentdeletehelper
class SelectWithPivotLoader extends SelectLoader \selectwithpivotloader
class HasMany extends Association \hasmany
class BelongsTo extends Association \belongsto
class MissingBehaviorException extends Exception \missingbehaviorexception
class PersistenceFailedException extends Exception \persistencefailedexception
class MissingEntityException extends Exception \missingentityexception
  class TableLocator extends AbstractLocator implements LocatorInterface \tablelocator
class CounterCacheBehavior extends Behavior \countercachebehavior
class TreeBehavior extends Behavior \treebehavior
class MissingTableClassException extends Exception \missingtableclassexception
class RolledbackTransactionException extends Exception \rolledbacktransactionexception
class ShadowTableStrategy implements TranslateStrategyInterface \shadowtablestrategy
class EavStrategy implements TranslateStrategyInterface \eavstrategy
class TranslateBehavior extends Behavior implements PropertyMarshalInterface \translatebehavior
class TimestampBehavior extends Behavior \timestampbehavior
class ValidCount \validcount
class IsUnique \isunique
class ExistsIn \existsin
class LinkConstraint \linkconstraint
class ContentsNotContain extends ContentsBase \contentsnotcontain
class MailSentFrom extends MailSentWith \mailsentfrom
class MailContainsHtml extends MailContains \mailcontainshtml
class NoMailSent extends MailConstraintBase \nomailsent
class MailContainsText extends MailContains \mailcontainstext
class MailSentTo extends MailSentWith \mailsentto
class MailContainsAttachment extends MailContains \mailcontainsattachment
class MailCount extends MailConstraintBase \mailcount
class LayoutFileEquals extends TemplateFileEquals \layoutfileequals
class FileSent extends ResponseBase \filesent
class BodyNotEmpty extends BodyEmpty \bodynotempty
class CookieEncryptedEquals extends CookieEquals \cookieencryptedequals
class FileSentAs extends ResponseBase \filesentas
class CookieNotSet extends CookieSet \cookienotset
class StatusCode extends StatusCodeBase \statuscode
class HeaderNotSet extends HeaderSet \headernotset
class ContentType extends ResponseBase \contenttype
class BodyNotContains extends BodyContains \bodynotcontains
class StatusOk extends StatusCodeBase \statusok
class BodyNotRegExp extends BodyRegExp \bodynotregexp
class StatusFailure extends StatusCodeBase \statusfailure
class StatusSuccess extends StatusCodeBase \statussuccess
class BodyNotEquals extends BodyEquals \bodynotequals
class StatusError extends StatusCodeBase \statuserror
class MissingConsoleInputException extends RuntimeException \missingconsoleinputexception
class HeaderNotContains extends HeaderContains \headernotcontains
class ConsoleOutput extends ConsoleOutputBase \consoleoutput
class ConsoleInput extends ConsoleInputBase \consoleinput
class ResultSet implements ResultSetInterface \resultset
class TestExceptionRenderer \testexceptionrenderer
class EagerLoader \eagerloader
class Marshaller \marshaller
class Socket \socket
class SocketException extends Exception \socketexception
class MissingTaskException extends ConsoleException \missingtaskexception
class HelpCommand extends BaseCommand implements CommandCollectionAwareInterface \helpcommand
class MissingShellMethodException extends ConsoleException \missingshellmethodexception
class StopException extends ConsoleException \stopexception
class MissingHelperException extends Exception \missinghelperexception
class MissingOptionException extends ConsoleException \missingoptionexception
class ViewBlock \viewblock
class JsonView extends SerializedView \jsonview
class StringTemplate \stringtemplate
class HelperRegistry extends ObjectRegistry \helperregistry
class CommandTask extends Shell \commandtask
class AjaxView extends View \ajaxview
class TableHelper extends Helper \tablehelper
class ProgressHelper extends Helper \progresshelper
class FlashHelper extends Helper \flashhelper
class HtmlHelper extends Helper \htmlhelper
class NumberHelper extends Helper \numberhelper
class FormHelper extends Helper \formhelper
class PaginatorHelper extends Helper \paginatorhelper
class TextHelper extends Helper \texthelper
class XmlView extends SerializedView \xmlview
class ViewBuilder implements JsonSerializable, Serializable \viewbuilder
class FormContext implements ContextInterface \formcontext
class EntityContext implements ContextInterface \entitycontext
class ContextFactory \contextfactory
class NullContext implements ContextInterface \nullcontext
class ArrayContext implements ContextInterface \arraycontext
class UrlHelper extends Helper \urlhelper
class BreadcrumbsHelper extends Helper \breadcrumbshelper
class TimeHelper extends Helper \timehelper
class RuleInvoker \ruleinvoker
class FactoryLocator \factorylocator
class ConnectionRegistry extends ObjectRegistry \connectionregistry
class MissingDatasourceException extends Exception \missingdatasourceexception
class QueryCacher \querycacher
class SimplePaginator extends Paginator \simplepaginator
class ResultSetDecorator extends Collection implements ResultSetInterface \resultsetdecorator
class ConnectionManager \connectionmanager
class MissingModelException extends Exception \missingmodelexception
class RulesProvider \rulesprovider
class Validator implements ArrayAccess, IteratorAggregate, Countable \validator
class ValidationSet implements ArrayAccess, IteratorAggregate, Countable \validationset
class RecordNotFoundException extends Exception \recordnotfoundexception
class InvalidPrimaryKeyException extends Exception \invalidprimarykeyexception
class MissingDatasourceConfigException extends Exception \missingdatasourceconfigexception
class PageOutOfBoundsException extends Exception \pageoutofboundsexception
class CommandScanner \commandscanner
class CommandCollection implements IteratorAggregate, Countable \commandcollection
class ConsoleInputArgument \consoleinputargument
class ConsoleInputOption \consoleinputoption
class ValidationRule \validationrule
class Validation \validation
class ConsoleIo \consoleio
class TaskRegistry extends ObjectRegistry \taskregistry
class HelpFormatter \helpformatter
class Arguments \arguments
class MissingShellException extends ConsoleException \missingshellexception
class CommandRunner implements EventDispatcherInterface \commandrunner
class ConsoleInputSubcommand \consoleinputsubcommand
class ConsoleOptionParser \consoleoptionparser
class CommandFactory implements CommandFactoryInterface \commandfactory
class PluginCollection implements Iterator, Countable \plugincollection
class BasePlugin implements PluginInterface \baseplugin
class Plugin \plugin
class App \app
class PhpConfig implements ConfigEngineInterface \phpconfig
class JsonConfig implements ConfigEngineInterface \jsonconfig
class CommandRetry \commandretry
class ClassLoader \classloader
class HtmlFormatter implements FormatterInterface \htmlformatter
class ClassNode implements NodeInterface \classnode
class ReferenceNode implements NodeInterface \referencenode
class ArrayNode implements NodeInterface \arraynode
class Configure \configure
class ArrayItemNode implements NodeInterface \arrayitemnode
class DebugContext \debugcontext
class ScalarNode implements NodeInterface \scalarnode
class CorsBuilder \corsbuilder
class MiddlewareQueue implements Countable, SeekableIterator \middlewarequeue
class Runner implements RequestHandlerInterface \runner
class ResponseEmitter implements EmitterInterface \responseemitter
class HttpsEnforcerMiddleware implements MiddlewareInterface \httpsenforcermiddleware
class EncryptedCookieMiddleware implements MiddlewareInterface \encryptedcookiemiddleware
class DatabaseSession implements SessionHandlerInterface \databasesession
class CacheSession implements SessionHandlerInterface \cachesession
class ServerRequest implements ServerRequestInterface \serverrequest
class Client implements ClientInterface \client
class IniConfig implements ConfigEngineInterface \iniconfig
class MissingPluginException extends Exception \missingpluginexception
class Server implements EventDispatcherInterface \server
class Session \session
class Response extends Message implements ResponseInterface \response
class CallbackStream extends BaseCallbackStream \callbackstream
class CheckboxWidget extends BasicWidget \checkboxwidget
class DateTimeWidget extends BasicWidget \datetimewidget
class ButtonWidget implements WidgetInterface \buttonwidget
class TextareaWidget extends BasicWidget \textareawidget
class FileWidget extends BasicWidget \filewidget
class SelectBoxWidget extends BasicWidget \selectboxwidget
class YearWidget extends BasicWidget \yearwidget
class RadioWidget extends BasicWidget \radiowidget
class MissingElementException extends MissingTemplateException \missingelementexception
class MissingCellException extends Exception \missingcellexception
class SerializationFailureException extends Exception \serializationfailureexception
class MissingViewException extends Exception \missingviewexception
class MissingCellTemplateException extends MissingTemplateException \missingcelltemplateexception
class MultiCheckboxWidget extends BasicWidget \multicheckboxwidget
class MissingLayoutException extends MissingTemplateException \missinglayoutexception
class ExceptionRenderer implements ExceptionRendererInterface \exceptionrenderer
class ConsoleErrorHandler extends BaseErrorHandler \consoleerrorhandler
class FatalErrorException extends Exception \fatalerrorexception
class ErrorHandlerMiddleware implements MiddlewareInterface \errorhandlermiddleware
class PropertyNode implements NodeInterface \propertynode
class SpecialNode implements NodeInterface \specialnode
class ConsoleFormatter implements FormatterInterface \consoleformatter
class TextFormatter implements FormatterInterface \textformatter
class WidgetLocator \widgetlocator
class NestingLabelWidget extends LabelWidget \nestinglabelwidget
class Schema \schema
class Form implements EventListenerInterface, EventDispatcherInterface, ValidatorAwareInterface \form
class FormProtector \formprotector
class Debugger \debugger
class ErrorHandler extends BaseErrorHandler \errorhandler
class ErrorLogger implements ErrorLoggerInterface \errorlogger
class WincacheEngine extends CacheEngine \wincacheengine
class MemcachedEngine extends CacheEngine \memcachedengine
class FileEngine extends CacheEngine \fileengine
class ArrayEngine extends CacheEngine \arrayengine
class RedisEngine extends CacheEngine \redisengine
class NullEngine extends CacheEngine \nullengine
class InvalidArgumentException extends Exception implements InvalidArgumentInterface \invalidargumentexception
class Cache \cache
class CacheRegistry extends ObjectRegistry \cacheregistry
  class ConditionDecorator extends AbstractDecorator \conditiondecorator
  class SubjectFilterDecorator extends AbstractDecorator \subjectfilterdecorator
class EventList implements ArrayAccess, Countable \eventlist
class Event implements EventInterface \event
class EventManager implements EventManagerInterface \eventmanager
class ForbiddenException extends HttpException \forbiddenexception
class MethodNotAllowedException extends HttpException \methodnotallowedexception
class UnauthorizedException extends HttpException \unauthorizedexception
class FormData implements Countable \formdata
class FormDataPart \formdatapart
class Request extends Message implements RequestInterface \request
class ClientException extends RuntimeException implements ClientExceptionInterface \clientexception
class RequestException extends RuntimeException implements RequestExceptionInterface \requestexception
class Curl implements AdapterInterface \curl
class Stream implements AdapterInterface \stream
class Digest \digest
class Oauth \oauth
class Basic \basic
class NetworkException extends RuntimeException implements NetworkExceptionInterface \networkexception
class SecurityHeadersMiddleware implements MiddlewareInterface \securityheadersmiddleware
class ClosureDecoratorMiddleware implements MiddlewareInterface \closuredecoratormiddleware
class CspMiddleware implements MiddlewareInterface \cspmiddleware
class CsrfProtectionMiddleware implements MiddlewareInterface \csrfprotectionmiddleware
class ConflictException extends HttpException \conflictexception
class InvalidCsrfTokenException extends HttpException \invalidcsrftokenexception
class BodyParserMiddleware implements MiddlewareInterface \bodyparsermiddleware
class DoublePassDecoratorMiddleware implements MiddlewareInterface \doublepassdecoratormiddleware
class MissingControllerException extends Exception \missingcontrollerexception
class UnavailableForLegalReasonsException extends HttpException \unavailableforlegalreasonsexception
class NotFoundException extends HttpException \notfoundexception
class NotImplementedException extends HttpException \notimplementedexception
class NotAcceptableException extends HttpException \notacceptableexception
class ServiceUnavailableException extends HttpException \serviceunavailableexception
class GoneException extends HttpException \goneexception
class InternalErrorException extends HttpException \internalerrorexception
class TypeFactory \typefactory
class ApcuEngine extends CacheEngine \apcuengine
class FieldTypeConverter \fieldtypeconverter
class ValueBinder \valuebinder
class Connection implements ConnectionInterface \connection
class TypeMap \typemap
class FunctionsBuilder \functionsbuilder
class Exception extends CakeException \exception
class SchemaCache \schemacache
class IdentifierQuoter \identifierquoter
class SqliteCompiler extends QueryCompiler \sqlitecompiler
class PostgresCompiler extends QueryCompiler \postgrescompiler
class CallbackStatement extends StatementDecorator \callbackstatement
class SqlserverCompiler extends QueryCompiler \sqlservercompiler
class BufferedStatement implements Iterator, StatementInterface \bufferedstatement
class MysqlStatement extends PDOStatement \mysqlstatement
class Cookie implements CookieInterface \cookie
class CookieCollection implements IteratorAggregate, Countable \cookiecollection
class InflectedRoute extends Route \inflectedroute
class Shell \shell
class Route \route
class Behavior implements EventListenerInterface \behavior
class LabelWidget implements WidgetInterface \labelwidget
class BasicWidget implements WidgetInterface \basicwidget
class Helper implements EventListenerInterface \helper
class View implements EventDispatcherInterface \view
class StringType extends BaseType implements OptionalConvertInterface \stringtype
class DateTimeType extends BaseType implements BatchCastingInterface \datetimetype
class StatementDecorator implements StatementInterface, Countable, IteratorAggregate \statementdecorator
class Command extends BaseCommand \command
class DebugTransport extends AbstractTransport \debugtransport
class Component implements EventListenerInterface \component
class BasicAuthenticate extends BaseAuthenticate \basicauthenticate