Authentic - Bring authentication to your server

Hi. What can I do if one of my users forgot his password?

I’m planning to add a command to allow an op to change the password of a player, but for the moment, you must have access to the database: you can delete the line corresponding to the user, he will just have to register again.

If you use MySQL, it should be easy for you, as you probably have PhpMyAdmin installed (or maybe you are good enough in SQL).

If you use H2, you must use a database explorer (you can find the official one here)

in both case, you can use the following SQL command:


DELETE * FROM <table> WHERE username='<user>';

Where ā€œ<table>ā€ is the table name you selected (it is ā€œauthenticā€ by default) and ā€œ<user>ā€ is the username of your player.

It may be easier for you to use the web interface directly instead of SQL commands. Make it to your preference.

This is what I need, thanks.

i need help for the database setup for MYSQL settings

Yes? what is your problem?
Did you do anything to the database or the configuration file?

Hello I have some problem, can you help me with this?
https://images-ext-1.discordapp.net/external/ZA9N0cDRiydwQ6kAm5WDAuTcoGNXxdtlNBs_z9f3CDY/%3Fwidth%3D1374%26height%3D77/https/media.discordapp.net/attachments/949709308348735579/967797634700030022/unknown.png
How can i fix it? D:

Hi!
How did you setup the plugin’s configuration file?
Can you send it?

Hi when using MariaDB the plugin fills the database connection pool on the DB side with sleeping connections.

that’s weird, the plugins is supposed to cache results to prevents such things :thinking:.
I’ll probably switch to an orm engine later, which should handle the database connections better,
instead of writing sql queries by hand.
But for the moment I don’t have much time to work on the plugin since I’m in my last years of study.

how change password for players?

One can change its own password by using /register once logged.
For now, admins cannot change password from other players unless they have access to the database.
If you want to change the password in the database, you can refer to the post i made here.

an alternative solution would be to update the hash field corresponding to the player with a base64-encoded sha512 hash, but here you must know how to hash a password with this method and to edit a row in a mysql or a h2 database, depending on your case.

I can help if you need some. and of course, if you don’t understand what i’m talking about/i didn’t understand your problem, feel free to pm me.

Hello, I’m using Forge 1.12.2 and SpongeForge 7.4 for my server. I also use latest RLCraft modpack, Simple Voice Chat mod 1.12.2-2.5.26 and Eagle Factions 0.16.2 which is a SpongeForge plugin. I wanted to add your plugin to my server to protect players accounts but it gives errors when i start the server nonstop. Server works but plugin doesn’t work. I setted up everything right and I don’t understand what’s the problem. Here is the thing:

[18:29:46] [Server thread/WARN] [Sponge]: //
[18:29:46] [Server thread/WARN] [Sponge]: /* Could not pass MoveEntityEvent$Position$Impl */
[18:29:46] [Server thread/WARN] [Sponge]: /
/
[18:29:46] [Server thread/WARN] [Sponge]: /* Could not pass the event MoveEntityEvent$Position$Impl to an Event Listener! /
[18:29:46] [Server thread/WARN] [Sponge]: /
/
[18:29:46] [Server thread/WARN] [Sponge]: /
Since the event can be modified during the event’s listener, /
[18:29:46] [Server thread/WARN] [Sponge]: /
there could be adverse side effects of the exception occurring /
[18:29:46] [Server thread/WARN] [Sponge]: /
such that duplications or other game breaking issues could exist. /
[18:29:46] [Server thread/WARN] [Sponge]: /
/
[18:29:46] [Server thread/WARN] [Sponge]: /
Due to the nature of the exception, this is not likely an exception /
[18:29:46] [Server thread/WARN] [Sponge]: /
that is covered by SpongeForge or Forge itself, and therefore should /
[18:29:46] [Server thread/WARN] [Sponge]: /
be reported to the mod/plugin author first prior to reporting to /
[18:29:46] [Server thread/WARN] [Sponge]: /
Sponge or Forge. /
[18:29:46] [Server thread/WARN] [Sponge]: /
/
[18:29:46] [Server thread/WARN] [Sponge]: /
Owning Mod/Plugin: authentic /
[18:29:46] [Server thread/WARN] [Sponge]: /
Exception: /
[18:29:46] [Server thread/WARN] [Sponge]: /
java.lang.NullPointerException: null /
[18:29:46] [Server thread/WARN] [Sponge]: /
org.framagit.anhkagi.authentic.Config.getNode(Config.java:123) /
[18:29:46] [Server thread/WARN] [Sponge]: /
org.framagit.anhkagi.authentic.Authentic.onEntityMove(Authentic.java:352) /
[18:29:46] [Server thread/WARN] [Sponge]: /
org.spongepowered.common.event.listener.MoveEntityEventListener_Authentic_onEntityMove4.handle(Unknown Source) /
[18:29:46] [Server thread/WARN] [Sponge]: /
org.spongepowered.common.event.RegisteredListener.handle(RegisteredListener.java:97) /
[18:29:46] [Server thread/WARN] [Sponge]: /
org.spongepowered.mod.event.SpongeModEventManager.post(SpongeModEventManager.java:383) /
[18:29:46] [Server thread/WARN] [Sponge]: /
org.spongepowered.mod.event.SpongeModEventManager.extendedPost(SpongeModEventManager.java:458) /
[18:29:46] [Server thread/WARN] [Sponge]: /
org.spongepowered.mod.event.SpongeModEventManager.post(SpongeModEventManager.java:419) /
[18:29:46] [Server thread/WARN] [Sponge]: /
org.spongepowered.common.event.SpongeEventManager.post(SpongeEventManager.java:467) /
[18:29:46] [Server thread/WARN] [Sponge]: /
org.spongepowered.common.SpongeImpl.postEvent(SpongeImpl.java:249) /
[18:29:46] [Server thread/WARN] [Sponge]: /
org.spongepowered.common.event.SpongeCommonEventFactory.callMoveEntityEvent(SpongeCommonEventFactory.java:1007) /
[18:29:46] [Server thread/WARN] [Sponge]: /
org.spongepowered.common.event.tracking.TrackingUtil.tickEntity(TrackingUtil.java:169) /
[18:29:46] [Server thread/WARN] [Sponge]: /
net.minecraft.world.WorldServer.redirect$zob000$onCallEntityUpdate(WorldServer.java:4761) /
[18:29:46] [Server thread/WARN] [Sponge]: /
net.minecraft.world.World.func_72866_a(World.java:1996) /
[18:29:46] [Server thread/WARN] [Sponge]: /
net.minecraft.world.WorldServer.func_72866_a(WorldServer.java:832) /
[18:29:46] [Server thread/WARN] [Sponge]: /
net.minecraft.world.World.func_72870_g(World.java:1958) /
[18:29:46] [Server thread/WARN] [Sponge]: /
net.minecraft.world.World.func_72939_s(World.java:1762) /
[18:29:46] [Server thread/WARN] [Sponge]: /
net.minecraft.world.WorldServer.func_72939_s(WorldServer.java:3931) /
[18:29:46] [Server thread/WARN] [Sponge]: /
net.minecraft.server.MinecraftServer.func_71190_q(MinecraftServer.java:767) /
[18:29:46] [Server thread/WARN] [Sponge]: /
net.minecraft.server.dedicated.DedicatedServer.func_71190_q(DedicatedServer.java:397) /
[18:29:46] [Server thread/WARN] [Sponge]: /
net.minecraft.server.MinecraftServer.func_71217_p(MinecraftServer.java:668) /
[18:29:46] [Server thread/WARN] [Sponge]: /
net.minecraft.server.MinecraftServer.run(MinecraftServer.java:526) /
[18:29:46] [Server thread/WARN] [Sponge]: /
java.lang.Thread.run(Thread.java:748) /
[18:29:46] [Server thread/WARN] [Sponge]: //
container@pterodactyl~ Server marked as stopping…
stop
[18:29:57] [Server thread/WARN] [Sponge]: /
***/
[18:29:57] [Server thread/WARN] [Sponge]: /
Could not pass SendCommandEvent$Impl /
[18:29:57] [Server thread/WARN] [Sponge]: /**************************************************************************************************************************/
[18:29:57] [Server thread/WARN] [Sponge]: /
Could not pass the event SendCommandEvent$Impl to an Event Listener! /
[18:29:57] [Server thread/WARN] [Sponge]: /
/
[18:29:57] [Server thread/WARN] [Sponge]: /
Since the event can be modified during the event’s listener, /
[18:29:57] [Server thread/WARN] [Sponge]: /
there could be adverse side effects of the exception occurring /
[18:29:57] [Server thread/WARN] [Sponge]: /
such that duplications or other game breaking issues could exist. /
[18:29:57] [Server thread/WARN] [Sponge]: /
/
[18:29:57] [Server thread/WARN] [Sponge]: /
Due to the nature of the exception, this is not likely an exception /
[18:29:57] [Server thread/WARN] [Sponge]: /
that is covered by SpongeForge or Forge itself, and therefore should /
[18:29:57] [Server thread/WARN] [Sponge]: /
be reported to the mod/plugin author first prior to reporting to /
[18:29:57] [Server thread/WARN] [Sponge]: /
Sponge or Forge. /
[18:29:57] [Server thread/WARN] [Sponge]: /
/
[18:29:57] [Server thread/WARN] [Sponge]: /
Owning Mod/Plugin: authentic /
[18:29:57] [Server thread/WARN] [Sponge]: /
Exception: /
[18:29:57] [Server thread/WARN] [Sponge]: /
java.lang.NullPointerException: null /
[18:29:57] [Server thread/WARN] [Sponge]: /
org.framagit.anhkagi.authentic.Config.getNode(Config.java:123) /
[18:29:57] [Server thread/WARN] [Sponge]: /
org.framagit.anhkagi.authentic.Authentic.onPlayerCommand(Authentic.java:426) /
[18:29:57] [Server thread/WARN] [Sponge]: /
org.spongepowered.common.event.listener.SendCommandEventListener_Authentic_onPlayerCommand7.handle(Unknown Source) /
[18:29:57] [Server thread/WARN] [Sponge]: /
org.spongepowered.common.event.RegisteredListener.handle(RegisteredListener.java:97) /
[18:29:57] [Server thread/WARN] [Sponge]: /
org.spongepowered.mod.event.SpongeModEventManager.post(SpongeModEventManager.java:383) /
[18:29:57] [Server thread/WARN] [Sponge]: /
org.spongepowered.mod.event.SpongeModEventManager.extendedPost(SpongeModEventManager.java:458) /
[18:29:57] [Server thread/WARN] [Sponge]: /
org.spongepowered.mod.event.SpongeModEventManager.post(SpongeModEventManager.java:419) /
[18:29:57] [Server thread/WARN] [Sponge]: /
org.spongepowered.common.event.SpongeEventManager.post(SpongeEventManager.java:467) /
[18:29:57] [Server thread/WARN] [Sponge]: /
org.spongepowered.common.command.SpongeCommandManager.process(SpongeCommandManager.java:327) /
[18:29:57] [Server thread/WARN] [Sponge]: /
net.minecraft.command.ServerCommandManager.func_71556_a(SourceFile:665) /
[18:29:57] [Server thread/WARN] [Sponge]: /
net.minecraft.server.dedicated.DedicatedServer.func_71333_ah(DedicatedServer.java:433) /
[18:29:57] [Server thread/WARN] [Sponge]: /
net.minecraft.server.dedicated.DedicatedServer.func_71190_q(DedicatedServer.java:398) /
[18:29:57] [Server thread/WARN] [Sponge]: /
net.minecraft.server.MinecraftServer.func_71217_p(MinecraftServer.java:668) /
[18:29:57] [Server thread/WARN] [Sponge]: /
net.minecraft.server.MinecraftServer.run(MinecraftServer.java:526) /
[18:29:57] [Server thread/WARN] [Sponge]: /
java.lang.Thread.run(Thread.java:748) */
[18:29:57] [Server thread/WARN] [Sponge]: /**************************************************************************************************************************/
[18:29:57] [Server thread/INFO] [minecraft/DedicatedServer]: Stopping the server
[18:29:57] [Server thread/INFO] [AUW]: Stopping DS…
[18:29:57] [Server thread/INFO] [minecraft/MinecraftServer]: Stopping server
[18:29:57] [Server thread/INFO] [minecraft/MinecraftServer]: Saving players
[18:29:57] [Server thread/INFO] [minecraft/MinecraftServer]: Saving worlds
[18:29:57] [Server thread/INFO] [minecraft/MinecraftServer]: Saving chunks for level ā€˜World’/0
[18:29:57] [Server thread/INFO] [minecraft/MinecraftServer]: Saving chunks for level ā€˜DIM-1’/-1
[18:29:57] [Server thread/INFO] [minecraft/MinecraftServer]: Saving chunks for level ā€˜DIM1’/1
[18:29:57] [Server thread/INFO] [minecraft/MinecraftServer]: Saving chunks for level ā€˜LOST’/111
[18:29:57] [Server thread/INFO] [globalgamerules]: Saving gamerules of dimension 0 (World) to config
[18:29:57] [Server thread/INFO] [Sponge]: Unloading world [World] (minecraft:overworld/0)
[18:29:57] [Server thread/INFO] [globalgamerules]: Saving gamerules of dimension -1 (DIM-1) to config
[18:29:57] [Server thread/INFO] [Sponge]: Unloading world [DIM-1] (minecraft:nether/-1)
[18:29:57] [Server thread/INFO] [globalgamerules]: Saving gamerules of dimension 1 (DIM1) to config
[18:29:57] [Server thread/INFO] [Sponge]: Unloading world [DIM1] (minecraft:the_end/1)
[18:29:57] [Server thread/INFO] [globalgamerules]: Saving gamerules of dimension 111 (LOST) to config
[18:29:57] [Server thread/INFO] [Sponge]: Unloading world [LOST] (lostcities:lostcities/111)
container@pterodactyl~ Server marked as offline…

Hello, this must be the API that is too high. It’s been a while since the last time I could touch the code. :sweat_smile:
For now there is no solution for you, I’m currently updating the plugin, but I don’t know how much time it will take me.

Ok, that is weird. You say you are using SpongeForge 7.4, and the latest version of authentic uses API version 7.1.0, so it’s supposed to work. But from what I can see from the log you sent, it does seem to be an API problem. I’m still investigating, I will keep you informed if I find something.

EDIT: Ok I see where the problem is coming from, and it’s not an API problem :sweat_smile:. Actually it’s a configuration problem.
The plugin is trying to get the configuration value for immobilizePlayers and allowCommands in the configuration file, which must be missing.
The plugin is supposed to import values from a default configuration file to prevent this, but for whatever reason it didn’t or the value got removed. @Atk61yld Could you post your configuration file (you should remove any secret infos like db credentials if any). it should be in config/authentic/.