Jump to content
MediaWiki

Manual:$wgSessionProviders

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.

See also

[edit ]

AltStyle によって変換されたページ (->オリジナル) /