
Admin Password Manager 0.3
Advanced protection for administrators
Admin Password Manager is a cutting-edge plugin designed to enhance the security of Minecraft servers. It ensures that administrator accounts are protected from unauthorized access by generating unique passwords for every group and administrator, based on the server's configuration. The plugin seamlessly integrates with the LuckPerms permission management system, providing real-time updates for group and role changes.
New Features:
Add Administrators via LuckPerms:
Adding an administrator to the database is as simple as assigning them a group specified in the configuration file. This automation streamlines the process by generating unique passwords and binding IP addresses whenever the group is added.Automatic Removal from the Database:
When a group specified in the configuration is removed from an administrator, the corresponding database entry is automatically deleted to maintain up-to-date records.Unique Passwords:
A unique password is automatically generated for each administrator and group upon their first login, ensuring maximum security.LuckPerms Integration:
Admin Password Manager operates in real time with LuckPerms, monitoring and adapting to group changes to keep administrators protected.Database Support:
All passwords and IP bindings are securely stored in a database, ensuring easy management and enhanced security.Flexible and User-Friendly:
The plugin provides an intuitive set of commands to manage administrator accounts and configurations effortlessly.
Why Choose Admin Password Manager?
Admin Password Manager provides top-tier security by automating access control for administrators and moderators. Its seamless integration with LuckPerms, IP address verification, and ability to manage accounts through group configurations make it an essential tool for large-scale servers.
Key Benefits:
Unique Passwords:
The plugin automatically generates a unique password for each group and administrator upon their first login, eliminating the risk of reused passwords.LuckPerms Integration:
Admin Password Manager works in real time with LuckPerms, monitoring group assignments and updates to ensure administrators are always protected.Database Support:
All passwords and IP bindings are securely stored in a database, simplifying management and enhancing protection.Password Hashing:
Passwords are never stored in plain text — they are hashed using the SHA256 algorithm. Future updates will include even stronger hashing algorithms.IP Address Verification:
Authorization is tied to the administrator's IP address. If the IP changes, the administrator cannot log in until the binding is manually updated, protecting against breaches even if the password is compromised.Flexible Management:
A robust command set allows server owners to manage passwords and authorization settings with ease.
Features:
Automatic Password Generation:
Upon an administrator's first login, the plugin generates a unique password and stores it in the database. The password is shown only once in chat.Group Monitoring:
When an administrator is assigned a new group or their current group changes, a new unique password is generated.User-Friendly Commands:
Admins can quickly manage their credentials or reset bindings with intuitive commands.
Detailed Command List:
1.
/alogin <password>
Log into the system. Administrators must use this command after joining the server.
2.
/alogin reset password <AdminNickname> <group>
Resets the password for a specific administrator and group. A new unique password will be generated.
Example:/alogin reset password CoolAdmin Moderators
3.
/alogin reset ip <AdminNickname> <group>
Resets the IP binding for an administrator, allowing them to log in from a new network.
Example:/alogin reset ip CoolAdmin Moderators
4.
/alogin force unlogin <AdminNickname> <group>
Forcefully logs the administrator out of the system. Useful in cases of suspected account compromise.
Example:/alogin force unlogin CoolAdmin Moderators
5.
/alogin force login <AdminNickname> <group>
Bypasses the password requirement, logging the administrator in manually. Ideal for emergency situations.
Example:/alogin force login CoolAdmin Moderators
Why Choose Admin Password Manager?
Admin Password Manager is your server’s ultimate shield against unauthorized access. By combining unique password generation, IP verification, and seamless integration with LuckPerms, this plugin ensures the highest level of security for administrators and moderators alike.
Video:
Admin Password Manager Login example
License
Polymart Licensing System: Admin Password Manager includes built-in protection against piracy by leveraging the Polymart licensing system. This ensures only authorized users can run the plugin, safeguarding you.
Support and Feedback:
- Report bugs or suggest features via [Discord https://discord.gg/Zvy6W9XjYj]
- Regular updates ensure improved functionality and security.
Permissions:
-
AdminPassword.Login
— allows the use of the/alogin
command. -
AdminPassword.Reset
— grants permission to reset passwords. -
AdminPassword.ResetIP
— grants permission to reset IP bindings. -
AdminPassword.ForceUnLogin
— grants permission to forcibly log an administrator out. -
AdminPassword.ForceLogin
— grants permission to forcibly log an administrator in.
Config.yml
#Language supported {ru, en, custom}
Language: en
# This configuration file specifies the database setup and admin roles for the application.
database:
# Type of database to be used (e.g., mysql, postgresql, sqlite)
type: mysql
# MySQL database configuration
mysql:
host: localhost # The hostname or IP address of the MySQL server
port: 3306 # The port number for MySQL connection
name: plugins # The name of the database
user: root # The username for the MySQL database
password: "" # The password for the MySQL database (empty string for no password)
params: # Additional connection parameters for MySQL
- 'autoReconnect=true' # Ensures the connection automatically reconnects if lost
- 'useSSL=DISABLED' # Disables SSL for the connection
# PostgreSQL database configuration (comment out if not in use)
postgresql:
host: localhost # The hostname or IP address of the PostgreSQL server
port: port # The port number for PostgreSQL connection (replace with actual port)
name: name # The name of the PostgreSQL database
user: admin # The username for the PostgreSQL database
password: pass # The password for the PostgreSQL database
params: # Additional connection parameters for PostgreSQL
- 'autoReconnect=true' # Ensures the connection automatically reconnects if lost
- 'useSSL=DISABLED' # Disables SSL for the connection
# SQLite database configuration (for lightweight, file-based storage)
sqlite:
file: database.db # Path to the SQLite database file
# List of roles that have admin-level permissions within the application
Admin_roles:
- Moderator
- Owner
- Admin
#Length of password creation
Password_length: 5
#Enable limited number of attempts
#true - enabled
#false - disabled
Login_attempts_active: true
#Number of unsuccessful authorization attempts
login_attempts: 3
attempts_failed:
#Permanent ban
permanent_ban:
#param active - Enable or disable banning permanently
#require true or false
active: false
#Reason for ban
reason: "You have tried to log in with your admin account too many times"
#Temporary ban
temp_ban:
#param active - Enable or disable banning temporary
#require true or false
active: true
#The time for which he will be banned should be specified in seconds.
time: 10
#Reason for ban
reason: "You have tried to log in with your admin account too many times"
ip_ban:
#param active - Enable or disable banning temporary
#require true or false
active: true
#The time for which he will be banned should be specified in seconds.
time: 10
#Reason for ip ban
reason: "Your IP address has been blocked. You have tried to log in with an administrator account too many times. Blocking time: @ban_time@ seconds"
#Block authorization in the system if administrator's IP has changed
#To reset the authorization lock on a user type /alogin resetip <Nick>
block_auth: true
#If enabled, another administrator who has the {AdminPassword.ForceLogin}
#rights will be able to authorize another admin without a password
#Disable this feature or be very vigilant about the administrators who have this capability
force_login: true