Sueta

AuthMeReloaded

6.0.1

The best authentication plugin for the Bukkit/Spigot API!

·Plugin
  1. 6.0.1latest6.0.1 Update (Security Fixes)Sep 3, 2026
    AuthMe 6.0.1 A maintenance release for the 6.x line. It closes several session-handling holes in the Paper and Folia builds, hardens the proxy and premium bypass paths, and adds a new hash algorithm, a new converter and a new API method. If you run the Paper or Folia jar with pre-join dialogs enabled, update as soon as you can. See the security section below. Full changelog: 6.0.0...6.0.1 Security fixes Pre-join session takeover on Paper and Folia This affects the Paper 1.21+ and Folia 1.21+ builds on offline-mode servers, when the pre-join login/registration dialog is in use. The transient state of a pre-join dialog (the password being typed, the registration data, the recovery email, the pending kick message, the force-login future) was stored under the player's UUID. On an offline-mode server, every connection using the same name resolves to the same offline UUID. That meant a second connection opened on a registered player's name shared the state of the connection that was still authenticating, and could read it or wipe it. Three changes fix this: · Pre-join state is now keyed by connection session instead of by player name or profile id. Opening a session for a new connection discards the state of any earlier session for that name, so it can never be inherited, and the state is consumed in one go so nothing is left half-read. (39eed4e) · A connection now claims the player name while it is still being established, before the play state. The new PendingConnectionRegistry holds the name for the login or registration timeout plus a short grace period. A second connection on the same name gets the "already online" message instead of racing the first one. The single-session check also runs again during the configuration phase, not only during login. Claims expire on a TTL and are released on join or on disconnect, so a name can never stay locked out. (098ef5e) · A pre-join connection whose name claim was taken over is now denied instead of being allowed to continue. (8b41f72) Proxy auto-login with an unset shared secret Leaving Hooks.proxySharedSecret empty on a backend used to run HMAC verification anyway, with the empty string as the key. That offered no real protection against forged perform.login messages. An empty secret now rejects every perform.login message and logs Hooks.proxySharedSecret is not configured. ( 5722849) If you rely on proxy auto-login, copy the proxy-generated secret to every backend before updating. See proxy configuration. Premium claims accepted while premium was disabled The proxy login validator had no enablePremium gate. A proxy-verified premium claim for a player whose database row still carried a premiumUuid was accepted even after the feature had been turned off on the backend. On top of that, the proxy.started handler skipped sending the premium list when it was empty, so the proxy kept a stale premium_names.cache and went on verifying enrolled players. Both paths are now gated on the setting, and an empty list is sent as authoritative so the proxy replaces and persists its cache on first contact instead of waiting for a restart. ( 0f148bf, 5bae6ee, #3127) New features ARGON2ID hash algorithm ARGON2ID is now available as a recommended passwordHash value. The recent hash implementations have also moved to BouncyCastle. See the hash algorithms reference. NexAuth converter You can now migrate accounts from NexAuth with /authme converter nexauth. The converter reads plugins/NexAuth/config.conf to work out the storage backend. SQLite is read directly, so no shared database is needed, and MySQL and PostgreSQL are supported too. Premium UUIDs and TOTP secrets are preserved, and players already present in AuthMe are skipped. See the converters guide. Note that the LibreLogin converter now maps Argon2-ID to ARGON2ID rather than ARGON2. premium.keepOfflineUuidCompatibility on the proxy plugins A new proxy-side flag controls how premium players appear to backend servers. With the default false, premium players keep their Mojang UUID v4. With true, they keep the backend offline UUID v3 for plugin compatibility. Velocity handles both modes natively. On BungeeCord, PacketEvents is only needed when the flag is true. AuthMeApi#forceLoginFromProxy(String) A new API method that lets proxy plugins force a login before the Player object exists, which bypasses the Paper/Folia pre-join dialog. Queue-first ordering keeps it race-safe against AsynchronousJoin. Completion is asynchronous, and the caller is responsible for authenticating the proxy signal. ( #3118) Cancellation messages Dialog cancellation now has its own translatable messages. The Tatar translation has been updated as well. Bug fixes Premium and proxy · Premium enrollment is finalized in-join on the v3/proxy path in offline-UUID mode, using the same one-shot gate as the login validator. No more double finalization or spurious "premium verification failed" messages. · Fixed premium cache handling on the proxy side · Premium names sent to the proxy are normalized · Pending state is held during premium verification, and a failed attempt now allows a reconnect so /login can be enforced · Auto-login carries through to whichever server the player joins next · Hardened perform.login handling during server transitions · A pending kick is applied after session or proxy auto-login verification, not before · Players no longer freeze after /freemium when proxy auto-login is active (#3105) · Ender pearls are restored for premium users · Premium profile creation no longer uses a deprecated API Dialogs · The pre-join login dialog is suppressed through config-phase auto-login when the player is already authenticated (#3098) · Players who cancel the login or registration dialog are kicked correctly when that option is enabled · The pre-join dialog is cancelled correctly on failure and on the cancel button · maxRegPerIp is now checked in the pre-join dialog workflow · The premium handshake is deferred if the first player to join cancels the dialog General · Walk and fly speed are restored correctly on quit, and corrupted speed values are repaired on join · Email verification codes are only registered once the email has actually been sent · Players are no longer teleported to 0,0,0 after a resetpos Breaking changes PermissionsEx and zPermissions support has been removed. Both have been unmaintained for years. Move to LuckPerms or another supported permissions plugin before updating. Hooks.proxySharedSecret is now mandatory for proxy auto-login. An empty value no longer falls back to an empty HMAC key. It rejects every perform.login message. Internal · JUnit 5 cleanup across the output, permission, process, security, service, settings, task and util packages (#3106) · Dependency updates Additional resources · Configuration reference · Commands and permissions · Hash algorithms · Converters · Translations · Premium bypass · Proxy configuration
    1429 downloads
  2. 6.0.06.0.0 UpdateMay 7, 2026
    AuthMe 6.0.0 AuthMe 6.0.0 is a major overhaul focused on modern server compatibility, a cleaner authentication experience, and broader plugin ecosystem support. This is the first stable release of the 6.x line. Highlights Dedicated builds for every platform AuthMe now ships as separate, purpose-built jars for each server platform: Spigot 1.16–1.19, Spigot 1.20–1.21+, Paper 1.21+ (1.21.11+ recommended for Dialog), and Folia 1.21+. Install the jar that matches your server — no further configuration needed to get the right behaviour for your platform. Native proxy plugins for BungeeCord and Velocity Two dedicated proxy plugins are now available, one for BungeeCord and one for Velocity. They handle authentication state synchronisation between the proxy and backend servers automatically, replacing the previous approach that relied solely on backend-side configuration. See the proxy configuration guide for setup instructions. Dialog-based login and registration On Spigot 1.21.6+ and Paper / Folia 1.21.11+, players are presented with a graphical dialog to log in or register — displayed right as they connect, before they even fully join the server. The dialog is shown in the player's own language. Several quality-of-life improvements ship with the dialog system: · Email recovery in post-join dialogs — players with a recovery email can trigger password recovery directly from the dialog · "Let player in" recovery option — a new setting allows players to partially join the server to complete account recovery rather than being held at the connection screen · Customisable body description — the body text of login/register dialogs is configurable per server · Separate forgot-password dialog — the forgot-password flow has its own dedicated UI for both pre-join and post-join contexts · Register field validation — pre-join registration dialogs validate fields (password length, email format, etc.) before submission · Kick-on-cancel option — a new setting controls whether players are kicked if they dismiss the pre-join dialog Premium bypass with cryptographic Mojang verification Players with a legitimate Mojang account can skip password authentication entirely. AuthMe verifies their identity via a full cryptographic handshake with Mojang's session server — no password prompt, no dialog box. This closes the spoofing vector that existed when relying solely on username matching. Three verification modes are supported automatically depending on your setup: direct offline-mode (requires PacketEvents), online-mode proxy (UUID forwarded by the proxy), and offline-mode proxy with the AuthMe proxy plugin. Premium player lists are synchronised automatically and sent in chunks for large servers. See the premium bypass guide for full setup instructions. Messages in the player's own language AuthMe serves each player messages in their Minecraft client language, including login/register prompts, help output, and dialogs. When a player's locale is not available it falls back to the server's configured default. See the translations reference for the full list of supported languages. New in this release: Tatar and Spanish translations. Eight new account importers The converter system now covers a wide range of authentication plugins. You can migrate accounts from: · Auth+, LibreLogin, LimboAuth, nLogin (including SQLite auto-detection), OpeNLogin, tiAuth All importers reuse the AuthMe connection pool and apply consistent UUID handling. See the converters guide for usage. New server spawn priority A new server value is available for the spawn priority setting. The spawn location is determined by the configured server spawn point with an optional radius so players don't stack on the same block. Falls back to the default spawn location if none is available. Email confirmation on change /email add and /email change now require the player to confirm the new address before it is saved, preventing typos from locking players out of account recovery. Separate login and registration timeouts The single timeout setting has been split into two independent values: loginTimeout and registerTimeout. Existing configurations are migrated automatically — no action required. Full details are in the configuration reference. New hash algorithm: PBKDF2BASE64 A new PBKDF2BASE64 hash algorithm is now supported. See the hash algorithms reference for details. Ender pearls returned on login Ender pearls thrown before authentication are held and returned to the player's inventory on successful login rather than being lost. Configurable via settings.restrictions.cancelThrownEnderPearlOnJoin. Breaking changes Java 17 is now the minimum required version for spigot-legacy. Servers still running Java 8 or Java 11 must upgrade before installing this release. Java 21 is now the minimum required version for other platforms (Spigot 1.21, Paper, Folia). PacketEvents replaces ProtocolLib for inventory protection, tab-complete blocking, and premium bypass in direct-connection mode. Install PacketEvents 2.x if you use any of these features — ProtocolLib is no longer used for this purpose. Bug fixes · Quit location is now correctly saved on disconnect · Walk and fly speed are properly reset on auto-login via premium, session, or proxy · Admin force-login commands correctly dismiss any open dialog for the target player · Proxy auto-login works correctly when the target player is already online · Email format is validated before any processing is attempted · Email recovery UI is only shown when the email sending system is properly configured · TOTP QR codes are generated with a default margin · BungeeCord plugin messaging channel is correctly registered on startup · Brigadier command registration handles @ characters and awaits proper type resolution · Converters correctly insert and update player UUIDs · Spawn location Y coordinate is correctly selected in server spawn mode Additional resources · Configuration reference · Commands and permissions · Permission nodes · Hash algorithms · Converters · Translations · Premium bypass · Proxy configuration
    56136 downloads
  3. 6.0.0-R16.0.0-R1 Release CandidateApr 26, 2026
    AuthMe 6.0.0-R1 - Release Candidate This update brings a smoother, more modern AuthMe experience for both server owners and players. The focus of this release is simple: better support for modern server setups, a cleaner login flow, and more flexibility for server customization. Highlights Dedicated builds for every platform AuthMe now ships as separate, purpose-built jars for each server platform: Spigot 1.16–1.19, Spigot 1.20–1.21, Paper 1.21+, and Folia 1.21+. Install the jar that matches your server — no further configuration needed to get the right behaviour for your platform. Native proxy plugins for BungeeCord and Velocity Two new dedicated proxy plugins are now available, one for BungeeCord and one for Velocity. They handle authentication state synchronisation between the proxy and your backend servers automatically, replacing the previous approach that relied solely on backend-side configuration. See the proxy configuration guide for setup instructions. Dialog-based login and registration On Spigot 1.21.6+ and Paper / Folia 1.21.11+, players are presented with a graphical dialog to log in or register — displayed right as they connect, before they even fully join the server. The dialog is shown in the server's configured language. Messages in the player's own language AuthMe can now automatically serve each player messages in their Minecraft client language. When a player's locale is not available, it falls back cleanly to the server's configured default. See the translations reference for the full list of supported languages. Separate login and registration timeouts The single timeout setting has been split into two independent values: loginTimeout and registerTimeout. Existing configurations are migrated automatically — no action required. Full details are in the configuration reference. New hash algorithm and Auth+ account importer A new PBKDF2BASE64 hash algorithm is now supported. An importer for accounts from the Auth+ plugin is also included. See the hash algorithms reference and the converters guide for details. Ender pearls returned on login Ender pearls thrown before authentication are held and returned to the player's inventory on successful login, rather than being lost. This behaviour is configurable via settings.restrictions.cancelThrownEnderPearlOnJoin. Breaking changes Java 17 is now the minimum required version. Servers still running Java 8 or Java 11 must upgrade before installing this release. PacketEvents replaces ProtocolLib for inventory protection and tab-complete blocking. If you used those features with ProtocolLib, install PacketEvents as an optional dependency instead — ProtocolLib is no longer used for this purpose. Additional resources · Configuration reference · Commands and permissions · Permission nodes · Hash algorithms · Converters · Translations · Proxy configuration
    6280 downloads
  4. 5.7.05.7.0 UpdateApr 21, 2026
    AuthMe 5.7.0 This release focuses on stability, reconnect handling, mail reliability, and cleanup of long-deprecated code, while also improving localization support across commands. Breaking changes · Java 17 is now required for AuthMe 5.7.0. · Legacy xAuth and Whirlpool support has been removed. If your server still depends on those old hash formats, migrate before upgrading. Improvements · Replaced hardcoded command strings with translatable MessageKey entries, improving localization coverage. · Restored thrown ender pearls and mounted vehicles more reliably after reconnect. · Enforced name/IP restrictions earlier during AsyncPlayerPreLoginEvent for better protection. Fixes · Fixed stale disk limbo data when a player quits before limbo is fully created. · Fixed concurrent access issues affecting SQLite, timed counters, logout flow, and mail handling. · Prevented SMTP sending from freezing the main server thread by dispatching mail work asynchronously. · Corrected SSL/TLS handling for mail delivery and added the Email.sslCheckServerIdentity setting. · Fixed teleport edge cases, including the y = 0 bug and spawn handling for unregistered players when registration is not forced. · Fixed AccountsCommand self-lookup to use the correct self-owned accounts message. Maintenance · Updated dependencies and build tooling. · Refreshed CI compatibility, including ProtocolLib 5.3.0 and Multiverse 4.3.16 updates.
    2605 downloads
  5. 5.6.05.6.0 UpdateJun 29, 2024
    We're excited to announce the release of AuthMeReloaded 5.6.0! This update brings significant improvements and new features, enhancing compatibility, security, and overall functionality. Below is a detailed breakdown of what's new, updated, and fixed in this version. Provided JARs: · Minecraft 1.18+: AuthMe-5.6.0.jar · Minecraft 1.8.X to 1.17.X: AuthMe-5.6.0-legacy.jar Thank you for your continued support and contributions to AuthMeReloaded! We hope you enjoy the new features and improvements in this release. Changelog New Features · Minecraft Compatibility: Now supports Minecraft versions 1.8 through 1.21. · Java Compatibility: Supports Java versions 8 through 21. PR#2342 · Legacy Jar: Provided a legacy jar for Minecraft versions older than 1.18. Issue#1779 · GeoIP Database Option: Added config option to disable the GeoIP database. PR#2720 · MariaDB Support: Added support for the MariaDB driver. Issue#2556 · MySQL 8 Support: Updated connectors to support MySQL 8. Issue#1779 Updated Features · /authme about Command: Enhancements to provide more detailed information. Commit|| · Security Enhancements: Increased the BCrypt default cost factor to reflect current computing power. PR#2360|| · Integration with LuckPerm: Keep contexts active after reloading groups. PR#2186 · Legacy Hashes Hint: Added a hint for legacy hashes in the LoginSecurity converter. Issue#2449 Bug Fixes · SQLite Issue: Resolved a file not found issue with SQLite. PR#2371 · Player Data Saving: Fixed an issue preventing player data from being saved correctly. Commit · Turkish Locale Support: Corrected issues affecting the Turkish locale. Commit · Automatic Anti-bot: Addressed issues with the automatic anti-bot feature. PR#2611 · BungeeCord Integration: Checks before enabling BungeeCord hook and various integration-related fixes. PR#2572 · LOGIN Plugin Message: Now sends a LOGIN plugin message on join if a player is not registered. PR#2275 · Join Message Listener: Changed priority to fix compatibility with EssentialsX. Commit · IP-Username Check: Prevent unrestricted usernames from bypassing IP restrictions. Commit · Column Check: Fixed an issue with database column checks. Issue#2543 · Disable BungeeCord Hook when not in use: Disabled BungeeCord hook if the proxy is disabled in Spigot settings. Commit Enhancements, Documentation and Miscellaneous · Updated Dependencies: Enhanced stability and security with the latest dependency updates. · Documentation: Updated documentation to reflect all the changes. · Translations: Updated translations for better accessibility and user experience. · Other Minor Fixes: Addressed various small issues to improve overall functionality and reliability.
    288843 downloads
  6. 5.6.0-beta25.6.0-beta2 UpdateApr 4, 2021
    Bugfixes and new features! Changelog: COMING SOON Closed issues: https://github.com/AuthMe/AuthMeReloaded/milestone/6?clos… Commits since 5.6.0-beta1: https://github.com/AuthMe/AuthMeReloaded/compare/5.6.0-be… Breaking changes: - None, hopefully!
    449007 downloads
  7. 5.4.05.4.0 UpdateDec 1, 2017
    279694 downloads
  8. 5.3.2 ReleaseAuthMe 5.3.2 ReleaseJul 6, 2017
    Important update: we fixed some major bugs! PLEASE UPDATE Now we have a single jar for any MC version since 1.7.10, enjoy!
    90399 downloads
  9. 5.3.1 ReleaseAuthMe Release 5.3.1Jun 1, 2017
    Add Spigot 1.12 Support For Previous version of Spigot, please use Legacy Jar found here : https://github.com/AuthMe/AuthMeReloaded/releases/tag/5.3.1 You can find all the changelog here : https://github.com/AuthMe/AuthMeReloaded/wiki/5.3-Changelog DEV ONLY : THE API PACKAGE HAS CHANGED!
    18439 downloads
  10. 5.3 ReleaseAuthMe Release 5.3May 31, 2017
    Add Spigot 1.12 Support For Previous version of Spigot, please use Legacy Jar found here : https://github.com/AuthMe/AuthMeReloaded/releases/tag/5.3 You can find all the changelog here : https://github.com/AuthMe/AuthMeReloaded/wiki/5.3-Changelog DEV ONLY : THE API PACKAGE HAS CHANGED!
    2873 downloads
  11. 5.2 ReleaseAuthMe 5.2 - Release BuildJan 29, 2017
    AuthMe 5.2 is now in a release state, after long year of test and improvements ! You can checkout the complete changelog here : https://github.com/AuthMe/AuthMeReloaded/wiki/5.2-Changelog
    49334 downloads
  12. 5.2-DEV-SeptemberAuthMe Dev 5.2 - September UpdateSep 21, 2016
    //Changes 5.2 DEV September * Fix some problems with API * Fix some message translation * Fix auto login not working in sync mode * Some other fix - Changelog available on github
    29252 downloads
  13. 5.2-BETA3AuthMe 5.2-BETA3Jun 17, 2016
    Before update to this version make sure to do a backup of all files, database and accounts. Changes 5.2 BETA 3: · Fixed performance issues. · Fixed spawn location issues. · Fixed SingleSession feature. · Added Max-Login-Tries feature. · Fixed other minor issues. Changes 5.2 BETA 2: Minor fixes Changes 5.2 Beta 1: WARNING: For CraftBukkit/Spigot < 1.7.10 or Cauldron you need to use this jar: http://ci.xephi.fr/job/AuthMeReload...rtifact/target/Auth… Short changelog: · Compatible MC 1.7.10, 1.8 and 1.9 · Huge performance enhancements · New cool features! Complete changelog (2000 commits ): https://github.com/AuthMe-Team/AuthMeReloaded/commits/master
    15622 downloads
  14. 5.0-beta3UpdateJul 14, 2015
    fix some problems with compilation and NPE
    23284 downloads
  15. 5.0-beta2Fix API issueJul 13, 2015
    Due to new API, old plugins would broke down :/ Don't forget to update to JAVA 8
    1733 downloads
  16. 5.0-beta1BETA1 AuthMe 5.0 - Feel free to report some issues !Jul 13, 2015
    AuthMe 5.0 can now been released as a beta, i think it's so much stable than before ... but some bugs can occured anyway, feel free to report them ! NOTE : You need to update to JAVA 8 in case you will use AuthMe 5 !
    1589 downloads
  17. 5.0-DevFix Entity cannot been damaged in some casesMay 4, 2015
    Other fix : Check correctly in the cache for lower case, Thread the cache
    1249 downloads

Similar projects

Plugin →