Add AuthManager
authorBrad Jorsch <bjorsch@wikimedia.org>
Sun, 22 Nov 2015 20:17:00 +0000 (20:17 +0000)
committerGergő Tisza <gtisza@wikimedia.org>
Mon, 16 May 2016 15:11:02 +0000 (15:11 +0000)
commitd245bd25aef1cc7f17f2323ca4d557cd820cc469
treea6fa357b76e941e306b15cd7c863ec89739a5525
parent4451ec3033c520b858f1a0ab83ee232334632789
Add AuthManager

This implements the AuthManager class and its needed interfaces and
subclasses, and integrates them into the backend portion of MediaWiki.
Integration with frontend portions of MediaWiki (e.g. ApiLogin,
Special:Login) is left for a followup.

Bug: T91699
Bug: T71589
Bug: T111299
Co-Authored-By: Gergő Tisza <gtisza@wikimedia.org>
Change-Id: If89d24838e326fe25fe867d02181eebcfbb0e196
82 files changed:
autoload.php
docs/extension.schema.json
docs/hooks.txt
includes/AuthPlugin.php
includes/DefaultSettings.php
includes/Preferences.php
includes/Setup.php
includes/auth/AbstractAuthenticationProvider.php [new file with mode: 0644]
includes/auth/AbstractPasswordPrimaryAuthenticationProvider.php [new file with mode: 0644]
includes/auth/AbstractPreAuthenticationProvider.php [new file with mode: 0644]
includes/auth/AbstractPrimaryAuthenticationProvider.php [new file with mode: 0644]
includes/auth/AbstractSecondaryAuthenticationProvider.php [new file with mode: 0644]
includes/auth/AuthManager.php [new file with mode: 0644]
includes/auth/AuthManagerAuthPlugin.php [new file with mode: 0644]
includes/auth/AuthPluginPrimaryAuthenticationProvider.php [new file with mode: 0644]
includes/auth/AuthenticationProvider.php [new file with mode: 0644]
includes/auth/AuthenticationRequest.php [new file with mode: 0644]
includes/auth/AuthenticationResponse.php [new file with mode: 0644]
includes/auth/ButtonAuthenticationRequest.php [new file with mode: 0644]
includes/auth/CheckBlocksSecondaryAuthenticationProvider.php [new file with mode: 0644]
includes/auth/ConfirmLinkAuthenticationRequest.php [new file with mode: 0644]
includes/auth/ConfirmLinkSecondaryAuthenticationProvider.php [new file with mode: 0644]
includes/auth/CreateFromLoginAuthenticationRequest.php [new file with mode: 0644]
includes/auth/CreatedAccountAuthenticationRequest.php [new file with mode: 0644]
includes/auth/CreationReasonAuthenticationRequest.php [new file with mode: 0644]
includes/auth/LegacyHookPreAuthenticationProvider.php [new file with mode: 0644]
includes/auth/LocalPasswordPrimaryAuthenticationProvider.php [new file with mode: 0644]
includes/auth/PasswordAuthenticationRequest.php [new file with mode: 0644]
includes/auth/PasswordDomainAuthenticationRequest.php [new file with mode: 0644]
includes/auth/PreAuthenticationProvider.php [new file with mode: 0644]
includes/auth/PrimaryAuthenticationProvider.php [new file with mode: 0644]
includes/auth/RememberMeAuthenticationRequest.php [new file with mode: 0644]
includes/auth/ResetPasswordSecondaryAuthenticationProvider.php [new file with mode: 0644]
includes/auth/SecondaryAuthenticationProvider.php [new file with mode: 0644]
includes/auth/TemporaryPasswordAuthenticationRequest.php [new file with mode: 0644]
includes/auth/TemporaryPasswordPrimaryAuthenticationProvider.php [new file with mode: 0644]
includes/auth/ThrottlePreAuthenticationProvider.php [new file with mode: 0644]
includes/auth/Throttler.php [new file with mode: 0644]
includes/auth/UserDataAuthenticationRequest.php [new file with mode: 0644]
includes/auth/UsernameAuthenticationRequest.php [new file with mode: 0644]
includes/registration/ExtensionProcessor.php
includes/session/SessionManager.php
includes/specials/SpecialChangeEmail.php
includes/specials/SpecialUserlogin.php
includes/specials/SpecialUserrights.php
includes/user/User.php
languages/i18n/en.json
languages/i18n/qqq.json
tests/TestsAutoLoader.php
tests/phpunit/MediaWikiTestCase.php
tests/phpunit/includes/api/ApiTestCase.php
tests/phpunit/includes/auth/AbstractAuthenticationProviderTest.php [new file with mode: 0644]
tests/phpunit/includes/auth/AbstractPasswordPrimaryAuthenticationProviderTest.php [new file with mode: 0644]
tests/phpunit/includes/auth/AbstractPreAuthenticationProviderTest.php [new file with mode: 0644]
tests/phpunit/includes/auth/AbstractPrimaryAuthenticationProviderTest.php [new file with mode: 0644]
tests/phpunit/includes/auth/AbstractSecondaryAuthenticationProviderTest.php [new file with mode: 0644]
tests/phpunit/includes/auth/AuthManagerTest.php [new file with mode: 0644]
tests/phpunit/includes/auth/AuthPluginPrimaryAuthenticationProviderTest.php [new file with mode: 0644]
tests/phpunit/includes/auth/AuthenticationRequestTest.php [new file with mode: 0644]
tests/phpunit/includes/auth/AuthenticationRequestTestCase.php [new file with mode: 0644]
tests/phpunit/includes/auth/AuthenticationResponseTest.php [new file with mode: 0644]
tests/phpunit/includes/auth/ButtonAuthenticationRequestTest.php [new file with mode: 0644]
tests/phpunit/includes/auth/CheckBlocksSecondaryAuthenticationProviderTest.php [new file with mode: 0644]
tests/phpunit/includes/auth/ConfirmLinkAuthenticationRequestTest.php [new file with mode: 0644]
tests/phpunit/includes/auth/ConfirmLinkSecondaryAuthenticationProviderTest.php [new file with mode: 0644]
tests/phpunit/includes/auth/CreateFromLoginAuthenticationRequestTest.php [new file with mode: 0644]
tests/phpunit/includes/auth/CreatedAccountAuthenticationRequestTest.php [new file with mode: 0644]
tests/phpunit/includes/auth/CreationReasonAuthenticationRequestTest.php [new file with mode: 0644]
tests/phpunit/includes/auth/LegacyHookPreAuthenticationProviderTest.php [new file with mode: 0644]
tests/phpunit/includes/auth/LocalPasswordPrimaryAuthenticationProviderTest.php [new file with mode: 0644]
tests/phpunit/includes/auth/PasswordAuthenticationRequestTest.php [new file with mode: 0644]
tests/phpunit/includes/auth/PasswordDomainAuthenticationRequestTest.php [new file with mode: 0644]
tests/phpunit/includes/auth/RememberMeAuthenticationRequestTest.php [new file with mode: 0644]
tests/phpunit/includes/auth/ResetPasswordSecondaryAuthenticationProviderTest.php [new file with mode: 0644]
tests/phpunit/includes/auth/TemporaryPasswordAuthenticationRequestTest.php [new file with mode: 0644]
tests/phpunit/includes/auth/TemporaryPasswordPrimaryAuthenticationProviderTest.php [new file with mode: 0644]
tests/phpunit/includes/auth/ThrottlePreAuthenticationProviderTest.php [new file with mode: 0644]
tests/phpunit/includes/auth/ThrottlerTest.php [new file with mode: 0644]
tests/phpunit/includes/auth/UserDataAuthenticationRequestTest.php [new file with mode: 0644]
tests/phpunit/includes/auth/UsernameAuthenticationRequestTest.php [new file with mode: 0644]
tests/phpunit/includes/session/SessionManagerTest.php
tests/phpunit/phpunit.php