NotEnoughAuth [OAuth: Google, Discord, Telegram and more]

⭐ — (8 endorsements) 📥 61 downloads 📌 v1.0 📅 5/8/2026
🟡 Updated this year

By MrQuackDuck · management

⬇ Download Mod Source: Modrinth 📅 Updated: 5/5/2026 📅 Created: 5/8/2026

🔍 Analysis

  • 🏆 #111 of 333 management mods in this game by downloads

📋 About This Mod

✅ `/link` — opens a dialog to link an additional OAuth2 provider to your account.
✅ `/unlink` — opens a dialog to unlink an OAuth2 provider from your account.
✅ `/logout` — terminates your current session hash, requires authentication on next join.
✅ `/auth info` — see a list of available commands.
✅ `/auth reload` — reloads the plugin.

**NotEnoughAuth** is a **Paper (1.21.7+)** plugin that allows you to authenticate players using **OAuth2 providers** (_Google, GitHub, GitLab, Discord, Twitch, Telegram_) based on the (https://minecraft.wiki/w/Dialog) functionality. How to set up — scroll down to the **🪄 Configuration** section. ### 👀 Screenshots <img width="600" src="https://github.com/user-attachments/assets/6de4ccad-41e9-4e68-aadd-f5eac1f3d88c" /> <img width="600" src="https://github.com/user-attachments/assets/4a1395e5-cb73-4069-931d-029d0ab6abfb" /> <img width="600" src="https://github.com/user-attachments/assets/6331ec73-2134-4d33-a4f7-bc0d958d1864" /> <img width="600" src="https://github.com/user-attachments/assets/80e9cdec-4469-4ffe-9689-e9a3a6080b7a" /> <img width="600" src="https://github.com/user-attachments/assets/c97ec6ca-ab2d-40c7-a2cf-e2e4cb8798d0" /> <img width="600" src="https://github.com/user-attachments/assets/c0d3ce3b-db8a-4110-b4c6-797ee5d3fdd2" /> <b>* While you authenticate, you will see the 'Joining world...' screen.</b><br/> <b>* After successfully authenticating, you will be automatically redirected to the server after the 'Joining world...' screen.</b> ### 🧶 How it works? Each player session has a hash describing the state of the client, and it is checked against the database (`data.yml`) each time a player joins.\ If sessions match - proceed to the server. If they don't, force the authentication. The session hash is composed of multiple factors: - IP address (https://jd.papermc.io/paper/26.1.2/io/papermc/paper/connection/PlayerConnection.html#getClientAddress())] - View distance (https://jd.papermc.io/paper/26.1.2/com/destroystokyo/paper/ClientOption.html#VIEW_DISTANCE)] - Flag to allow server listings (https://jd.papermc.io/paper/26.1.2/com/destroystokyo/paper/ClientOption.html#ALLOW_SERVER_LISTINGS)] - Locale (https://jd.papermc.io/paper/26.1.2/com/destroystokyo/paper/ClientOption.html#LOCALE)] - Chat visibility (https://jd.papermc.io/paper/26.1.2/com/destroystokyo/paper/ClientOption.html#CHAT_VISIBILITY)] - Skins parts (https://jd.papermc.io/paper/26.1.2/com/destroystokyo/paper/ClientOption.html#SKIN_PARTS)] ### 💻 Commands - `/link` — opens a dialog to link an additional OAuth2 provider to your account. - `/unlink` — opens a dialog to unlink an OAuth2 provider from your account. - `/logout` — terminates your current session hash, requires authentication on next join. - `/auth info` — see a list of available commands. - `/auth reload` — reloads the plugin. Aliases: `/nea`, `/notenoughauth`. ### 🔞 Permissions - `notenoughauth.admin` _(for **operators** by default)_ — Allows to use `/auth reload`. - `notenoughauth.default` _(**true** by default)_ — Allows to use the `/auth info` command. - `notenoughauth.link` _(**true** by default)_ — Allows to use the `/link` command. - `notenoughauth.unlink` _(**true** by default)_ — Allows to use the `/unlink` command. ### 📄 Default config **** **Don't forget** to put your **public IP** into the `webIp` field.<br> Also, you should **open the TCP port** on your machine for the plugin to work. <i>Port **4177** by default</i>.<br/> **Otherwise, nothing will work.** ```yaml # After setting 'webIp' and 'webPort', take a look at the console output; # You will see a list of OAuth2 redirect URLs - copy these and paste them into your OAuth provider settings (e.g., Google, GitHub) when creating the application credentials. webIp: "127.0.0.1" webPort: 4177 # Defines whether auth redirect links will contain "http" or "https"; # For example, if you use Nginx/Apache as a reverse proxy ('80' → '4177') and Cloudflare for SSL certificate, set this to 'true'; # For local testing, you may leave this as 'false'. useHttps: false # If you use tunneling software (such as 'playit.gg' or 'ngrok'), you may use this field for overriding the base URL (e.g., 'https://4be8-112-41-125-11.ngrok-free.app'). overriddenRedirectUrlBase: "" # Time for a player to pass the auth process (in seconds). timeout: 90 # Link for creating Google application: https://console.cloud.google.com/apis/credentials google: enabled: true clientId: "YOUR_GOOGLE_CLIENT_ID" secret: "YOUR_GOOGLE_CLIENT_SECRET" # Link for creating GitHub application: https://github.com/settings/developers github: enabled: true clientId: "YOUR_GITHUB_CLIENT_ID" secret: "YOUR_GITHUB_CLIENT_SECRET" # Link for creating GitLab application: https://gitlab.com/-/user_settings/applications gitlab: enabled: true clientId: "YOUR_GITLAB_APPLICATION_ID" secret: "YOUR_GITLAB_SECRET" # Link for creating Discord application: https://discord.com/developers/applications discord: enabled: true clientId: "YOUR_DISCORD_CLIENT_ID" secret: "YOUR_DISCORD_CLIENT_SECRET" # Link for creating Twitch application: https://dev.

NotEnoughAuth is a Paper (1. 21. 7+) plugin that allows you to authenticate players using OAuth2 providers (_Google, GitHub, GitLab, Discord, Twitch, Telegram_) based on the (https://minecraft.wiki/w/Dialog) functionality.

How to set up — scroll down to the 🪄 Configuration section.

### 👀 Screenshots

While you authenticate, you will see the 'Joining world...' screen.

After successfully authenticating, you will be automatically redirected to the server after the 'Joining world...' screen.

### 🧶 How it works?

Each player session has a hash describing the state of the client, and it is checked against the database (`data.yml`) each time a player joins.\ If sessions match - proceed to the server. If they don't, force the authentication.

The session hash is composed of multiple factors: - IP address [[`Player.getClientAddress()`](https://jd.papermc.io/paper/26. 1. 2/io/papermc/paper/connection/PlayerConnection.html#getClientAddress())] - View distance [[`ClientOption. VIEW_DISTANCE`](https://jd.papermc.io/paper/26. 1. 2/com/destroystokyo/paper/ClientOption.html#VIEW_DISTANCE)] - Flag to allow server listings [[`ClientOption. ALLOW_SERVER_LISTINGS`](https://jd.papermc.io/paper/26. 1. 2/com/destroystokyo/paper/ClientOption.html#ALLOW_SERVER_LISTINGS)] - Locale [[`ClientOption. LOCALE`](https://jd.papermc.io/paper/26. 1. 2/com/destroystokyo/paper/ClientOption.html#LOCALE)] - Chat visibility [[`ClientOption. CHAT_VISIBILITY`](https://jd.papermc.io/paper/26. 1. 2/com/destroystokyo/paper/ClientOption.html#CHAT_VISIBILITY)] - Skins parts [[`ClientOption. SKIN_PARTS`](https://jd.papermc.io/paper/26. 1. 2/com/destroystokyo/paper/ClientOption.html#SKIN_PARTS)]

### 💻 Commands

  • `/link` — opens a dialog to link an additional OAuth2 provider to your account.
  • `/unlink` — opens a dialog to unlink an OAuth2 provider from your account.
  • `/logout` — terminates your current session hash, requires authentication on next join.
  • `/auth info` — see a list of available commands.
  • `/auth reload` — reloads the plugin.

Aliases: `/nea`, `/notenoughauth`.

### 🔞 Permissions

  • `notenoughauth.admin` _(for operators by default)_ — Allows to use `/auth reload`.
  • `notenoughauth.default` _(true by default)_ — Allows to use the `/auth info` command.
  • `notenoughauth.link` _(true by default)_ — Allows to use the `/link` command.
  • `notenoughauth.unlink` _(true by default)_ — Allows to use the `/unlink` command.

### 📄 Default config

Don't forget to put your public IP into the `webIp` field.

Also, you should open the TCP port on your machine for the plugin to work. Port 4177 by default.

Otherwise, nothing will work.

```yaml # After setting 'webIp' and 'webPort', take a look at the console output; # You will see a list of OAuth2 redirect URLs - copy these and paste them into your OAuth provider settings (e.g., Google, GitHub) when creating the application credentials. webIp: "127. 0. 0. 1" webPort: 4177

# Defines whether auth redirect links will contain "http" or "https"; # For example, if you use Nginx/Apache as a reverse proxy ('80' → '4177') and Cloudflare for SSL certificate, set this to 'true'; # For local testing, you may leave this as 'false'. useHttps: false

# If you use tunneling software (such as 'playit.gg' or 'ngrok'), you may use this field for overriding the base URL (e.g., 'https://4be8-112-41-125-11.ngrok-free.app'). overriddenRedirectUrlBase: ""

# Time for a player to pass the auth process (in seconds). timeout: 90

# Link for creating Google application: https://console.cloud.google.com/apis/credentials google: enabled: true clientId: "YOUR_GOOGLE_CLIENT_ID" secret: "YOUR_GOOGLE_CLIENT_SECRET"

# Link for creating GitHub application: https://github.com/settings/developers github: enabled: true clientId: "YOUR_GITHUB_CLIENT_ID" secret: "YOUR_GITHUB_CLIENT_SECRET"

# Link for creating GitLab application: https://gitlab.com/-/user_settings/applications gitlab: enabled: true clientId: "YOUR_GITLAB_APPLICATION_ID" secret: "YOUR_GITLAB_SECRET"

# Link for creating Discord application: https://discord.com/developers/applications discord: enabled: true clientId: "YOUR_DISCORD_CLIENT_ID" secret: "YOUR_DISCORD_CLIENT_SECRET"

# Link for creating Twitch application: https://dev.

🤖 AI-enhanced — based on mod data

📊 Mod Details

Game
Minecraft Plugins
Author
MrQuackDuck
Version
1.0
Downloads
61
Endorsements
8
Category
management
Created
5/8/2026
Updated
5/5/2026
Game Versions
1.21.7, 1.21.8, 1.21.9, 1.21.10, 1.21.11
Tags
management, social, utility

🔧 How to Install Minecraft Plugins Mods

Download from Modrinth. Use Prism Launcher or drop into your mods folder.

📖 Full step-by-step install guide for Minecraft Plugins →

Visit the official mod page for specific installation instructions for this mod.

🎮 Need cheat codes or console commands? Check ur gaming wiki for Minecraft Plugins commands, item IDs, and more.

❓ Frequently Asked Questions

Which Minecraft Plugins versions does NotEnoughAuth [OAuth: Google, Discord, Telegram and more] support?

The author lists 1.21.7, 1.21.8, 1.21.9, 1.21.10, 1.21.11, 26.1. Other versions may work but are untested by the author.

What is the latest version of NotEnoughAuth [OAuth: Google, Discord, Telegram and more]?

Version 1.0, published 2026-05-05 with 61 downloads recorded at the source.

Keep browsing — more Minecraft Plugins mods await

📋 All Minecraft Plugins Mods 🏆 Top 25 📂 More management 👤 More by MrQuackDuck 🔎 Similar Mods 🌐 Best management (All Games) 🔀 Check Compatibility ⚖️ Compare Mods 🆕 New Mods