
SideGate
SideGate is a Minecraft server plugin that provides a hybrid authentication system for mixed-access environments. Premium players can join normally through Mojang authentication, while administrators may optionally allow specific non-authenticated accounts
Tags
Creators
Details
1.2.1
Compatibility
Changes
SideGate 1.2.1
Release date: 2026-06-10
Added
- Optional Floodgate and Geyser-Spigot integration. Detected Bedrock players stay on the Floodgate/Geyser authentication path and are not classified or tagged as SideGate guests.
- Soft dependencies for
floodgateandGeyser-Spigot; neither plugin is required when Bedrock support is not used. - Added configurable
premium-session-failure.actionwithKICK_WITH_MESSAGEandFALLBACK_TO_GUESTmodes. - Added a configurable Premium-name conflict message. SideGate compares the login UUID with the official Mojang profile before encryption so cracked launchers that abort on HTTP 401 receive the configured message.
- Added Guest fallback for Premium-name UUID mismatches before encryption, plus same-connection fallback when an invalid encrypted session response is available.
Changed
- Mojang profile lookups now run through ProtocolLib's asynchronous listener path to avoid blocking the packet thread.
- Premium lookup cache entries now expire after 10 minutes and use bounded eviction instead of clearing the entire cache.
- Premium lookup cache entries now retain the official Mojang UUID for early Premium-name conflict detection.
- Mojang API errors, invalid responses, and invalid Java usernames now fail closed by leaving authentication to the server instead of granting guest access.
- Guest connection selection now requires an exact address match or matching login profile name; unsafe cross-connection and port-only fallbacks were removed.
- Removed duplicate
[SideGate]text from plugin logger messages because Bukkit already adds the plugin name. - Compatibility and issue-report startup notices now use
INFO; the ProtocolLib dev-build warning is skipped when a development build is already installed.
Fixed
- Fixed Floodgate/Geyser Bedrock players being treated as non-premium guests.
- Fixed a possible guest injection mix-up when multiple login connections were pending.
- Fixed a ProtocolLib
TemporaryPlayerwarning and stack trace caused by reading an unavailable UUID during early login.
Projects on Modrinth are automatically available through a Maven repository for use with JVM build tools such as Gradle. To learn more about the Modrinth Maven API, click here.
Note: When available, you should use the creator's maven repo instead as it will have transitive dependency information that the Modrinth Maven API does not. You may also end up with duplicate dependencies if you use a mix of Modrinth and non-Modrinth Maven repositories for your dependencies, because the group identifier will be different when served through the Modrinth Maven API.
Maven coordinates:
Version ID:
build.gradle:
repositories {
exclusiveContent {
forRepository {
maven {
name = "Modrinth"
url = "https://api.modrinth.com/maven"
}
}
// forRepositories(fg.repository) // Uncomment when using ForgeGradle
filter {
includeGroup "maven.modrinth"
}
}
}
// Standard Gradle dependency
dependencies {
implementation "maven.modrinth:9Qpsvo2Z:1iqYzWzz"
}
// Legacy Loom dependency
dependencies {
modImplementation "maven.modrinth:9Qpsvo2Z:1iqYzWzz"
}
