Coder Social home page Coder Social logo

iru21 / authy Goto Github PK

View Code? Open in Web Editor NEW
26.0 26.0 18.0 331 KB

A simple authentication plugin for Minecraft 1.17+!

Home Page: https://modrinth.com/plugin/authy

License: GNU Lesser General Public License v3.0

Kotlin 100.00%
authentication minecraft plugin spigot

authy's Introduction

authy's People

Contributors

davicompai avatar ehjimr avatar iru21 avatar maximotg98 avatar oplexz avatar pys078 avatar ram-tyagi avatar spejik avatar w3ula avatar york9675 avatar yunanmadenci avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

authy's Issues

PlaceholderAPI

Maybe you will try to add to the plugin support for the placeholder api when the player is registered / logged in to show whether the player is already registered or logged in

Unexpected behavior while running commands in console

Running changepassword, login, pin, register and remember in console results in.. nothing. The command is not executed upon pressing Return; instead, it performs as if it's expecting something in stdin. Writing any sequence of characters and pressing Return results in "Unknown command".

image

Note: authy and unregister work as expected.

Can't login inside of portals

For example, when players get timed out while traveling through nether portals, they can't login after joining back.

We could teleport the player to the nearest position where they can type and then back to where they were.
I know you can enable teleport and back after login, but I don't really trust plugins teleporting me that far and not back, making me walk 4000 blocks.

I would make a PR but I barely know how plugins are coded so I'll leave it to someone else.

HELP! Im so confused!

Hey so long story short, nobody can use the commands, dunno where u also do the author.reg perm command too pls my friend had to be op to register and login!

Reply if you need to know plugins we use

I need help!

Hello is there a way to use the passworld in the authme for resson is u plugin don't have eny of reset passworld i found one way to find a foler of UUID to rmv it and reload!

Proper World Login Settings

as the title says, a proper setting that uses a world to be the login/registration

example:

loginWorld:
  world: login_void
  destinationWorld: world # or just teleport the player back to known last position

What is the default pin number?

My friend toggled the pin and accidently got kicked from the server because of AFK. But he forgot to set the pin, so when he join, the plugin told him to enter both password and pin, he tried to enter "000000" but no use.

Suggestion: /premium command

Add /premium command that detects if the user is premium or non-premium
If the user is premium, he/she will can to join the server without doing /login.

Bug report - (exception task 82) & Suggestion - (Changepass/resetpass/bypassiplimit)

BUG REPORT
Hello there, I am using PAPER ver 1.19.3, and Authy 3.2.4, but when i turn on the server, it will generate an exception task 82, please refer to the pastebin ya. thank you

This server is running Paper version git-Paper-445 (MC: 1.19.3) (Implementing API version 1.19.3-R0.1-SNAPSHOT) (Git: 4d7269e)

https://pastebin.com/FmeH7VWy


SUGGESTION
And for suggestion side, i propose to have a these for players/admins
/changepass <old_pass> <new_pass>
/changepin <old_pin> <new_pin>

and for admins
/resetpass
/resetpin

also I understand now Authy can find duplicated IP, for alt accounts some server are allowed for certain user like owner have 2-3 accounts, giving a bypass permission for limited 1 ip per server.
authy.bypassiplimit

Configuration options explanation

Adding more explanations to the config file or to the wiki would be a huge help. It might not be obvious for first-time users what they do or what units they use.
Examples:

nameValidation: true

timeout: 60

sessionExpiresIn: 48

effects:
  title: true
  particles: true
  sounds: true
  blindness: false

Dangerous status, disables Authy

I have set the coordinates when logging in to 0 365 0 , but if the user is in a dangerous position (For example: falling), then if he exits during that time and re-enters and presses revive, the blind effect will appear, and the coordinates are set. login will be lost

question: premium system

My question is if the plugin has or will have a way for users to set /premium and login with a premium account without having to set /login password.

Folia support it's possible?

Dear maker!

Is it possible that Folia will be a supported platform in the future?

Thank you in advance for your answer!

View shakes

When we set the option to teleport us when join in to some location, the view shakes.

Crash server after player login on fly

Disables the plugin and then the server when the player logs off in the air and enters again
Latest mirai paper fork, 1.20.1, latest authy

[13:14:04] [Server thread/WARN]: [Authy] Task #10241 for Authy v3.4.1 generated an exception
java.lang.IllegalArgumentException: Player is not allowed to fly (check #getAllowFlight())
	at com.google.common.base.Preconditions.checkArgument(Preconditions.java:145) ~[guava-31.1-jre.jar:?]
	at org.bukkit.craftbukkit.v1_20_R1.entity.CraftPlayer.setFlying(CraftPlayer.java:2343) ~[mirai-1.20.1.jar:git-Mirai-"f33520d"]
	at me.iru.process.PreLoginDataStore.restore(PreLoginDataStore.kt:34) ~[Authy-3.4.1.jar:?]
	at me.iru.process.LoginProcess.removePlayer(LoginProcess.kt:25) ~[Authy-3.4.1.jar:?]
	at me.iru.process.JoinProcess.check$lambda-1(JoinProcess.kt:94) ~[Authy-3.4.1.jar:?]
	at org.bukkit.craftbukkit.v1_20_R1.scheduler.CraftTask.run(CraftTask.java:101) ~[mirai-1.20.1.jar:git-Mirai-"f33520d"]
	at org.bukkit.craftbukkit.v1_20_R1.scheduler.CraftScheduler.mainThreadHeartbeat(CraftScheduler.java:480) ~[mirai-1.20.1.jar:git-Mirai-"f33520d"]
	at net.minecraft.server.MinecraftServer.tickChildren(MinecraftServer.java:1494) ~[mirai-1.20.1.jar:git-Mirai-"f33520d"]
	at net.minecraft.server.dedicated.DedicatedServer.tickChildren(DedicatedServer.java:452) ~[mirai-1.20.1.jar:git-Mirai-"f33520d"]
	at net.minecraft.server.MinecraftServer.tickServer(MinecraftServer.java:1408) ~[mirai-1.20.1.jar:git-Mirai-"f33520d"]
	at net.minecraft.server.MinecraftServer.runServer(MinecraftServer.java:1180) ~[mirai-1.20.1.jar:git-Mirai-"f33520d"]
	at net.minecraft.server.MinecraftServer.lambda$spin$0(MinecraftServer.java:320) ~[mirai-1.20.1.jar:git-Mirai-"f33520d"]
	at java.lang.Thread.run(Thread.java:833) ~[?:?]

Can we see the passwords ?

Hello my friend stoped playing and we want the get his items is there any way to see password from the server folder or anyway the remove the password

Please give him an administrator to reset the password

Can I give instructions for plugin optimization? help can display the command of this plugin like AuthMe, please add for the administrator to reset the player password pin, now my player forgot the password can not find the method, there are other features such as broadcast login success after the middle display login success large font can be set in the configuration file to close or open for people who need and do not need

Suggestion for Before login disable message event

Hi there author, i notice people can chat before they login, actually there are some hackers sendhack code thru chat to obtain op/ backend commands. Could you please verify on this allow us to disable login chat event.

image

multi-accounts

shows a message about multi-accounts even if there are 0 or 1 of them

没有op权限无法注册

我在使用时发现在用户没有op权限时,注册命令register 是没有的。
Minecraft版本:1.19.3

Error: The database file is locked(database is locked)

Error text:

[22:47:28 ERROR]: null                                                                                                                                                                                                                       |
org.bukkit.command.CommandException: Unhandled exception executing command 'register' in plugin Authy v3.5.2
        at org.bukkit.command.PluginCommand.execute(PluginCommand.java:47) ~[paper-api-1.20.1-R0.1-SNAPSHOT.jar:?]
        at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:155) ~[paper-api-1.20.1-R0.1-SNAPSHOT.jar:?]
        at org.bukkit.craftbukkit.v1_20_R1.CraftServer.dispatchCommand(CraftServer.java:987) ~[paper-1.20.1.jar:git-Paper-196]
        at org.bukkit.craftbukkit.v1_20_R1.command.BukkitCommandWrapper.run(BukkitCommandWrapper.java:64) ~[paper-1.20.1.jar:git-Paper-196]
        at com.mojang.brigadier.CommandDispatcher.execute(CommandDispatcher.java:265) ~[paper-1.20.1.jar:?]
        at net.minecraft.commands.Commands.performCommand(Commands.java:324) ~[?:?]
        at net.minecraft.commands.Commands.performCommand(Commands.java:308) ~[?:?]
        at net.minecraft.server.network.ServerGamePacketListenerImpl.performChatCommand(ServerGamePacketListenerImpl.java:2354) ~[?:?]
        at net.minecraft.server.network.ServerGamePacketListenerImpl.lambda$handleChatCommand$21(ServerGamePacketListenerImpl.java:2314) ~[?:?]
        at net.minecraft.util.thread.BlockableEventLoop.lambda$submitAsync$0(BlockableEventLoop.java:59) ~[?:?]
        at java.util.concurrent.CompletableFuture$AsyncSupply.run(CompletableFuture.java:1768) ~[?:?]
        at net.minecraft.server.TickTask.run(TickTask.java:18) ~[paper-1.20.1.jar:git-Paper-196]
        at net.minecraft.util.thread.BlockableEventLoop.doRunTask(BlockableEventLoop.java:153) ~[?:?]
        at net.minecraft.util.thread.ReentrantBlockableEventLoop.doRunTask(ReentrantBlockableEventLoop.java:24) ~[?:?]
        at net.minecraft.server.MinecraftServer.doRunTask(MinecraftServer.java:1338) ~[paper-1.20.1.jar:git-Paper-196]
        at net.minecraft.server.MinecraftServer.d(MinecraftServer.java:197) ~[paper-1.20.1.jar:git-Paper-196]
        at net.minecraft.util.thread.BlockableEventLoop.pollTask(BlockableEventLoop.java:126) ~[?:?]
        at net.minecraft.server.MinecraftServer.pollTaskInternal(MinecraftServer.java:1315) ~[paper-1.20.1.jar:git-Paper-196]
        at net.minecraft.server.MinecraftServer.pollTask(MinecraftServer.java:1308) ~[paper-1.20.1.jar:git-Paper-196]
        at net.minecraft.util.thread.BlockableEventLoop.runAllTasks(BlockableEventLoop.java:114) ~[?:?]
        at net.minecraft.server.MinecraftServer.tickServer(MinecraftServer.java:1424) ~[paper-1.20.1.jar:git-Paper-196]
        at net.minecraft.server.MinecraftServer.runServer(MinecraftServer.java:1170) ~[paper-1.20.1.jar:git-Paper-196]
        at net.minecraft.server.MinecraftServer.lambda$spin$0(MinecraftServer.java:317) ~[paper-1.20.1.jar:git-Paper-196]
        at java.lang.Thread.run(Thread.java:833) ~[?:?]
Caused by: org.sqlite.SQLiteException: [SQLITE_BUSY] The database file is locked (database is locked)
        at org.sqlite.core.DB.newSQLException(DB.java:1179) ~[sqlite-jdbc-3.42.0.0.jar:?]
        at org.sqlite.core.DB.newSQLException(DB.java:1190) ~[sqlite-jdbc-3.42.0.0.jar:?]
        at org.sqlite.core.DB.execute(DB.java:985) ~[sqlite-jdbc-3.42.0.0.jar:?]
        at org.sqlite.jdbc3.JDBC3PreparedStatement.lambda$execute$0(JDBC3PreparedStatement.java:57) ~[sqlite-jdbc-3.42.0.0.jar:?]
        at org.sqlite.jdbc3.JDBC3Statement.withConnectionTimeout(JDBC3Statement.java:454) ~[sqlite-jdbc-3.42.0.0.jar:?]
        at org.sqlite.jdbc3.JDBC3PreparedStatement.execute(JDBC3PreparedStatement.java:52) ~[sqlite-jdbc-3.42.0.0.jar:?]
        at me.iru.data.DatabaseConnection.query(DatabaseConnection.kt:81) ~[Authy-3.5.2.jar:?]
        at me.iru.data.PlayerData.update(PlayerData.kt:89) ~[Authy-3.5.2.jar:?]
        at me.iru.data.PlayerData.create(PlayerData.kt:36) ~[Authy-3.5.2.jar:?]
        at me.iru.AuthManager.register(AuthManager.kt:19) ~[Authy-3.5.2.jar:?]
        at me.iru.commands.cRegister.onCommand(cRegister.kt:51) ~[Authy-3.5.2.jar:?]
        at org.bukkit.command.PluginCommand.execute(PluginCommand.java:45) ~[paper-api-1.20.1-R0.1-SNAPSHOT.jar:?]
        ... 23 more

Also:

[22:50:01 WARN]: [Authy] Plugin Authy v3.5.2 generated an exception while executing task 1490147                                                                                                                                             |
java.lang.RuntimeException: Maximum pool size reached, no available connections!
        at me.iru.data.DatabaseConnection.getConnection(DatabaseConnection.kt:68) ~[Authy-3.5.2.jar:?]
        at me.iru.data.DatabaseConnection.query(DatabaseConnection.kt:78) ~[Authy-3.5.2.jar:?]
        at me.iru.data.PlayerData.getAll(PlayerData.kt:50) ~[Authy-3.5.2.jar:?]
        at me.iru.process.DuplicateProtection.getDuplicatesForIpOf(DuplicateProtection.kt:53) ~[Authy-3.5.2.jar:?]
        at me.iru.process.DuplicateProtection.check(DuplicateProtection.kt:25) ~[Authy-3.5.2.jar:?]
        at me.iru.events.LoginEvents.onInitialLogin$lambda-0(LoginEvents.kt:24) ~[Authy-3.5.2.jar:?]
        at org.bukkit.craftbukkit.v1_20_R1.scheduler.CraftTask.run(CraftTask.java:101) ~[paper-1.20.1.jar:git-Paper-196]
        at org.bukkit.craftbukkit.v1_20_R1.scheduler.CraftAsyncTask.run(CraftAsyncTask.java:57) ~[paper-1.20.1.jar:git-Paper-196]
        at com.destroystokyo.paper.ServerSchedulerReportingWrapper.run(ServerSchedulerReportingWrapper.java:22) ~[paper-1.20.1.jar:?]
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) ~[?:?]
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) ~[?:?]
        at java.lang.Thread.run(Thread.java:833) ~[?:?]

Version: 3.5.2
Minecraft version: 1.20.1
Config file:

nameValidation: true
timeout: 60
passwordValidation:
  minLength: 4
  maxLength: 32
  minUppercase: 0
  minNumbers: 0
pinValidation:
  minLength: 4
  maxLength: 10
effects:
  title: true
  particles: true
  sounds: true
  blindness: true
welcomeMessage:
  text:
  - '&7Добро пожаловать на сервер &6FireWorld&7! Желаем вам приятной игры!'
  enabled: true
requirePin: false
sendPinSetReminder: true
sessionExpiresIn: 48
onFirstJoin:
  teleport: true
  x: -483
  y: 70
  z: 969
  yaw: 0
  pitch: 0
  world: world
onJoin:
  # Concealment if set to true (also requires teleport to be true) will teleport a player to their position after authentication
  concealment: true
  teleport: true
  x: -483
  y: 70
  z: 969
  yaw: 0
  pitch: 0
  world: world
duplicateIpProtection:
  # 0 - No protection
  # 1 - Max is applied to online players
  # 2 - Max is applied to registered players
  protectionLevel: 2
  maxPerIp: 1
  notifyOnDuplicateIp: true
database:
  type: sqlite # mysql or sqlite
  credentials: # Only for mysql, ignore if using sqlite
    host: 127.0.0.1:3306
    user: root
    password: root
    database: authy
lang: ru_ru

Suggestion: Store passwords unhashed (not on by default)

I run a small private server and some of the players have no memory and i don't know how to edit db from file but i can view it so it would be helpful to see players' passwords to then remember to them what it is (ofc this feature would not be turned on by default)

Can't switch to another language

I tried to switch from en_us to cs_cz in the config and the plugin does not respond. So I tried translating everything directly in the en_us file and it doesn't respond either. I always restart the server after every change

Player respawn location bug

(onJoin.concealment is set to true)

Whenever a player dies, clicks the "Title Screen" button, and re-joins the server, they get teleported to the location where they died instead of their spawn point. This allows them to get their items back.

Suggestion

This plug-in is great, but I hope to add a function to hide the player's position. When a player logs in after registering his account, he will automatically hide the player's position. Only after entering the password will he be transferred to the real position

Offer

Add
/Changepassword function to change password. This is for when I forgot that you can change the password.

Allow /unregister [username] in-game

Either what the title says, or ignore when someone attempts to do /unregister [nickname] in-game, since it causes the player executing the command to be unregistered.

P.S. as far as I'm concerned, there's no information about being able to /unregister other players in the help entry, so making it that /unregister [username] works both in-game and in console, and adding it to the /help entry would solve this issue.

Issue with teleport on join on multi-world server

Hey

When setting teleport location on join, it teleports player to that coordinates but not teleporting to a needed world
So when i quit the server being in the nether or any other world, it teleports me to that coordinates anyway

I am using multiverse-core plugin and have many worlds
And now i am having a problem, where i am underground or inside blocks, when i join the server

Will be great if i could configure a world to teleport on join

Trying to register while logging in returns register usage

Expected behavior: all commands are blocked while you're logging in
Actual behavior: trying to run /register returns the usage for /register command. Actually running the command returns "You're already registered!".

I have tried running several other commands (both Authy and non-Authy), and none worked, other than /register.
Feel free to close this issue if this is the expected behavior -- I just found it slightly odd :)

Add the /logout command

It would be cool to have the /logout command which will log you out and kick off the server

Unhandled exception executing command 'register' in plugin Authy v3.4.2

Before it was 3.4.0 problem was the same, updated to 3.4.2 problem remained the same.

[12:08:27] [Server thread/ERROR]: null
org.bukkit.command.CommandException: Unhandled exception executing command 'register' in plugin Authy v3.4.2
	at org.bukkit.command.PluginCommand.execute(PluginCommand.java:47) ~[spigot-api-1.20.1-R0.1-SNAPSHOT.jar:?]
	at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:149) ~[spigot-api-1.20.1-R0.1-SNAPSHOT.jar:?]
	at org.bukkit.craftbukkit.v1_20_R1.CraftServer.dispatchCommand(CraftServer.java:874) ~[spigot-1.20.1-R0.1-SNAPSHOT.jar:3822-Spigot-9ebce8a-b60a95c]
	at org.bukkit.craftbukkit.v1_20_R1.command.BukkitCommandWrapper.run(BukkitCommandWrapper.java:50) ~[spigot-1.20.1-R0.1-SNAPSHOT.jar:3822-Spigot-9ebce8a-b60a95c]
	at com.mojang.brigadier.CommandDispatcher.execute(CommandDispatcher.java:265) ~[spigot-1.20.1-R0.1-SNAPSHOT.jar:?]
	at net.minecraft.commands.CommandDispatcher.performCommand(CommandDispatcher.java:314) ~[spigot-1.20.1-R0.1-SNAPSHOT.jar:3822-Spigot-9ebce8a-b60a95c]
	at net.minecraft.commands.CommandDispatcher.a(CommandDispatcher.java:298) ~[spigot-1.20.1-R0.1-SNAPSHOT.jar:3822-Spigot-9ebce8a-b60a95c]
	at net.minecraft.server.network.PlayerConnection.a(PlayerConnection.java:1960) ~[spigot-1.20.1-R0.1-SNAPSHOT.jar:3822-Spigot-9ebce8a-b60a95c]
	at net.minecraft.server.network.PlayerConnection.lambda$18(PlayerConnection.java:1922) ~[spigot-1.20.1-R0.1-SNAPSHOT.jar:3822-Spigot-9ebce8a-b60a95c]
	at net.minecraft.util.thread.IAsyncTaskHandler.b(SourceFile:67) ~[spigot-1.20.1-R0.1-SNAPSHOT.jar:3822-Spigot-9ebce8a-b60a95c]
	at java.util.concurrent.CompletableFuture$AsyncSupply.run(CompletableFuture.java:1768) ~[?:?]
	at net.minecraft.server.TickTask.run(SourceFile:18) ~[spigot-1.20.1-R0.1-SNAPSHOT.jar:3822-Spigot-9ebce8a-b60a95c]
	at net.minecraft.util.thread.IAsyncTaskHandler.d(SourceFile:156) ~[spigot-1.20.1-R0.1-SNAPSHOT.jar:3822-Spigot-9ebce8a-b60a95c]
	at net.minecraft.util.thread.IAsyncTaskHandlerReentrant.d(SourceFile:23) ~[spigot-1.20.1-R0.1-SNAPSHOT.jar:3822-Spigot-9ebce8a-b60a95c]
	at net.minecraft.server.MinecraftServer.b(MinecraftServer.java:1152) ~[spigot-1.20.1-R0.1-SNAPSHOT.jar:3822-Spigot-9ebce8a-b60a95c]
	at net.minecraft.server.MinecraftServer.d(MinecraftServer.java:1) ~[spigot-1.20.1-R0.1-SNAPSHOT.jar:3822-Spigot-9ebce8a-b60a95c]
	at net.minecraft.util.thread.IAsyncTaskHandler.x(SourceFile:130) ~[spigot-1.20.1-R0.1-SNAPSHOT.jar:3822-Spigot-9ebce8a-b60a95c]
	at net.minecraft.server.MinecraftServer.bg(MinecraftServer.java:1131) ~[spigot-1.20.1-R0.1-SNAPSHOT.jar:3822-Spigot-9ebce8a-b60a95c]
	at net.minecraft.server.MinecraftServer.x(MinecraftServer.java:1124) ~[spigot-1.20.1-R0.1-SNAPSHOT.jar:3822-Spigot-9ebce8a-b60a95c]
	at net.minecraft.util.thread.IAsyncTaskHandler.c(SourceFile:139) ~[spigot-1.20.1-R0.1-SNAPSHOT.jar:3822-Spigot-9ebce8a-b60a95c]
	at net.minecraft.server.MinecraftServer.p_(MinecraftServer.java:1108) ~[spigot-1.20.1-R0.1-SNAPSHOT.jar:3822-Spigot-9ebce8a-b60a95c]
	at net.minecraft.server.MinecraftServer.w(MinecraftServer.java:1019) ~[spigot-1.20.1-R0.1-SNAPSHOT.jar:3822-Spigot-9ebce8a-b60a95c]
	at net.minecraft.server.MinecraftServer.lambda$0(MinecraftServer.java:304) ~[spigot-1.20.1-R0.1-SNAPSHOT.jar:3822-Spigot-9ebce8a-b60a95c]
	at java.lang.Thread.run(Thread.java:833) ~[?:?]
Caused by: org.sqlite.SQLiteException: [SQLITE_BUSY] The database file is locked (database is locked)
	at org.sqlite.core.DB.newSQLException(DB.java:1179) ~[sqlite-jdbc-3.42.0.0.jar:?]
	at org.sqlite.core.DB.newSQLException(DB.java:1190) ~[sqlite-jdbc-3.42.0.0.jar:?]
	at org.sqlite.core.DB.execute(DB.java:985) ~[sqlite-jdbc-3.42.0.0.jar:?]
	at org.sqlite.jdbc3.JDBC3PreparedStatement.lambda$execute$0(JDBC3PreparedStatement.java:57) ~[sqlite-jdbc-3.42.0.0.jar:?]
	at org.sqlite.jdbc3.JDBC3Statement.withConnectionTimeout(JDBC3Statement.java:454) ~[sqlite-jdbc-3.42.0.0.jar:?]
	at org.sqlite.jdbc3.JDBC3PreparedStatement.execute(JDBC3PreparedStatement.java:52) ~[sqlite-jdbc-3.42.0.0.jar:?]
	at me.iru.data.DatabaseConnection.query(DatabaseConnection.kt:75) ~[?:?]
	at me.iru.data.PlayerData.update(PlayerData.kt:89) ~[?:?]
	at me.iru.data.PlayerData.create(PlayerData.kt:36) ~[?:?]
	at me.iru.AuthManager.register(AuthManager.kt:19) ~[?:?]
	at me.iru.commands.cRegister.onCommand(cRegister.kt:51) ~[?:?]
	at org.bukkit.command.PluginCommand.execute(PluginCommand.java:45) ~[spigot-api-1.20.1-R0.1-SNAPSHOT.jar:?]
	... 23 more

Auto-remembering upon login

Not sure if I missed something in the config file, but it'd be cool if there was a way to remember the user automatically after they've logged in successfully.
Also, how does /remember work? Does it just automatically let anyone login as some username, or does it remember the IP or some other kind of fingerprint?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.