Manual:$wgSessionProviders
Appearance
From mediawiki.org
Authentication: $wgSessionProviders | |
---|---|
Session provider configuration. |
|
Introduced in version: | 1.27.0 (Gerrit change 243223; git #a73c5b73) |
Removed in version: | Still in use |
Allowed values: | (array of ObjectFactory specifications) |
Default value: | see below |
Other settings: Alphabetical | By function |
Details
[edit ]Specifies what providers to use for SessionManager .
By default, CookieSessionProvider
(for normal cookie-based authentication) and BotPasswordSessionProvider
(for bot passwords) are included.
Order and array keys are not relevant. By convention, the array key is the classname of the provider.
Default values
[edit ] MediaWiki version:
≥ 1.40
$wgSessionProviders = [ \MediaWiki\Session\CookieSessionProvider::class => [ 'class' => \MediaWiki\Session\CookieSessionProvider::class, 'args' => [ [ 'priority' => 30, ] ], ], \MediaWiki\Session\BotPasswordSessionProvider::class => [ 'class' => \MediaWiki\Session\BotPasswordSessionProvider::class, 'args' => [ [ 'priority' => 75, ] ], 'services' => [ 'GrantsInfo' ], ], ];
MediaWiki version:
1.39
$wgSessionProviders = [ \MediaWiki\Session\CookieSessionProvider::class => [ 'class' => \MediaWiki\Session\CookieSessionProvider::class, 'args' => [ [ 'priority' => 30, 'callUserSetCookiesHook' => true, ] ], ], \MediaWiki\Session\BotPasswordSessionProvider::class => [ 'class' => \MediaWiki\Session\BotPasswordSessionProvider::class, 'args' => [ [ 'priority' => 75, ] ], 'services' => [ 'GrantsInfo' ], ], ];
MediaWiki versions:
1.27 – 1.38
$wgSessionProviders = [ MediaWiki\Session\CookieSessionProvider::class => [ 'class' => MediaWiki\Session\CookieSessionProvider::class, 'args' => [ [ 'priority' => 30, 'callUserSetCookiesHook' => true, ] ], ], MediaWiki\Session\BotPasswordSessionProvider::class => [ 'class' => MediaWiki\Session\BotPasswordSessionProvider::class, 'args' => [ [ 'priority' => 75, ] ], ], ];
Example
[edit ]$wgSessionProviders[MyCustomSessionProvider::class] = [ 'class' => MyCustomSessionProvider::class, 'args' => [ 'arg1', 'arg2' ], ];
or, if the extension uses extension registration (preferable):
{ //... "SessionProviders":{ "MyCustomSessionProvider":{ "class":"MyCustomSessionProvider", "args":["arg1","arg2"] }, //... }
This will create a session provider object with new MyCustomSessionProvider( 'arg1', 'arg2' )
, and register it as one of the session providers.
See ObjectFactory for details of the object construction syntax.