|  Release status: stable | |
|---|---|
|  | |
| Implementation | User activity | 
| Description | Prevents the creation of confusable usernames. | 
| Author(s) | Brion Vibber (Brion VIBBERtalk) | 
| Compatibility policy | Snapshots releases along with MediaWiki. Master is not backward compatible. | 
| MediaWiki | >= 1.41.0 | 
| Database changes | Yes | 
| Composer | mediawiki/anti-spoof | 
| Tables | spoofuser | 
| License | GNU General Public License 2.0 or later | 
| Download | Download extension  Git [?]: | 
| Parameters 
 | |
| Hooks used 
 | |
| Quarterly downloads | 68 (Ranked 107th) | 
| Public wikis using | 2,675 (Ranked 190th) | 
| Translate the AntiSpoof extension if it is available at translatewiki.net | |
| Issues | Open tasks · Report a bug | 
The AntiSpoof extension is an extension for preventing confusable usernames from being created. It blocks the creation of accounts with mixed-script, confusing and similar usernames.
For example, if user John Doe is already registered, the extension will block attempts to register:
- joHn dOE ( capital letters in different places)
- Jοhn Doe ( "ο" in Jοhn is Greek small letter omicron)
- John Dоe ( "о" in Dоe is Cyrillic small letter O)
- Јohn Doe ( "Ј" in Јohn is Cyrillic capital letter Je)
- John Đoe ( "Đ" in Đoe is Latin capital letter D with stroke)
- Jóhn Doe ( "ó" in Jóhn is Latin small letter O with acute)
- John Doe ( there is a Zero-width space before Doe)
- Jøhn Doe ( "ø" in Jøhn is Scandinavian oe)
- J0hn Doe ( "0" is the number zero)
etc.
Installation
- Download and place the file(s) in a directory called AntiSpoofin yourextensions/folder.
- Only when installing from Git, run Composer to install PHP dependencies, by issuing composer install --no-devin the extension directory. (See task T173141 for potential complications.)
- Add the following code at the bottom of your LocalSettings.php file: wfLoadExtension( 'AntiSpoof' ); 
- Run the update script which will automatically create the necessary database tables that this extension needs.
- In case user accounts are stored in a shared database, add:
$wgSharedTables[] = 'spoofuser';
- Run the batchAntiSpoof.phpscript from the command line to pre-populate the spoofuser table with your wiki's existing usernames.
php extensions/AntiSpoof/maintenance/batchAntiSpoof.php
 Done – Navigate to Special:Version on your wiki to verify that the extension is successfully installed. Done – Navigate to Special:Version on your wiki to verify that the extension is successfully installed.
- To verify that it's working, try creating an account for username "Adm1n"; most wikis have an "Admin" account and so AntiSpoof should reject this lookalike username with a message like "The name Adm1n is too similar to the existing account: Admin".
When installing from Git, please note that this extension requires Composer.
So, after installation from Git change to the directory containing the extension e.g. "../extensions/AntiSpoof/" and run composer install --no-dev, or when updating: composer update --no-dev.
Alternatively as well as preferably add the line "extensions/AntiSpoof/composer.json" to the "composer.local.json" file in the root directory of your wiki like e.g.
{
	"extra": {
		"merge-plugin": {
			"include": [
				"extensions/AntiSpoof/composer.json"
			]
		}
	}
}
See also
- Equivset (provides the equivalence sets used by AntiSpoof)
|  | This extension is being used on one or more Wikimedia projects. This probably means that the extension is stable and works well enough to be used by such high-traffic websites. Look for this extension's name in Wikimedia's CommonSettings.php and InitialiseSettings.php configuration files to see where it's installed. A full list of the extensions installed on a particular wiki can be seen on the wiki's Special:Version page. | 
|  | This extension is included in the following wiki farms/hosts and/or packages: This is not an authoritative list. Some wiki farms/hosts and/or packages may contain this extension even if they are not listed here. Always check with your wiki farms/hosts or bundle to confirm. | 
    This article is issued from Mediawiki. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.