Commit Graph

2945 Commits

Author SHA1 Message Date
DNx
6a219c3fc4 this one not get committed 2018-07-08 02:26:50 +07:00
DNx
1fd4f0e1a7 Improve previous commit 2018-07-08 02:24:58 +07:00
DNx
b741c0da14 Command with 0 delay should be run immediately 2018-07-07 23:39:59 +07:00
DNx
2e5fdb4ca0 Merge branch 'master' of https://github.com/AuthMe/AuthMeReloaded into delay-commands-event 2018-07-07 21:03:16 +07:00
DNx
1d118afd17 Fix #1587
AsyncPlayerPreLoginEvent#getAddress() sometimes return null if it unresolved.
In that case we should pass it to PlayerLoginEvent to do the join verification process.
2018-07-07 20:54:38 +07:00
Pavel Leshchev
4c640fddd9 Add come translations (#1596) 2018-07-04 02:05:51 +02:00
games647
0227cb3f74 Add IPv6 support for isLocal checks (#1592)
* Add IPv6 support for isLocal checks

* Replace magic values like 127.0.0.1 and use our utility
* Support for IPv6 local adresses in IPv6 only or dual stack environments
    * Loopback [::1]
    * Site-Local fc00::/7
    * Link-local fe80::/10

* Introduce extra method for loopback addresses

* Use public IP for passMaxLogin check

* Use non-local IP addresses in test after change in verification
2018-07-04 02:05:17 +02:00
games647
0a3b66bc7d
Start a reading instance after downloading (Related #1581) 2018-06-03 13:34:51 +02:00
games647
135e323358
Set the downloading flag in order to mark it as successful (Related #1581) 2018-06-03 09:47:52 +02:00
games647
f39141ed53
Fix race condition starting multiple database downloads (Related #1581) 2018-06-02 21:50:43 +02:00
games647
5058747b10
Download database only if there is a newer one uploaded (Fixes #1581) 2018-06-02 21:50:02 +02:00
ljacqu
fecd79fd28
Merge pull request #1577 from AuthMe/1417-chat-before-login-with-permission
#1417 Add permission node to allow chat before login
2018-05-22 19:51:15 +02:00
ljacqu
b9943675ba #1557 Disallow player from using /email setpassword more than once 2018-05-21 13:29:34 +02:00
ljacqu
768ef9179a Update datasource columns version
- Fixes #1551 Bad closing of resources in case of an exception
- Facilitates initialization of SQL handler implementation
2018-05-21 13:07:13 +02:00
ljacqu
68b896cfc3 Move salt column configuration to the other column configs 2018-05-21 09:10:27 +02:00
ljacqu
c4b02d74b7 Fix generic type in PlayerAuth matcher 2018-05-21 09:01:00 +02:00
ljacqu
6142042996 #1417 Add permission node to allow chat before login 2018-05-21 08:45:18 +02:00
ljacqu
8e4288f911 Minor code householding 2018-05-20 13:10:26 +02:00
RikoDEV
80dce1a92f Update messages_pl.yml (#1571)
* Update messages_pl.yml
2018-05-14 21:08:20 +02:00
Maxetto
3c0caf2ac3
[Messages_IT] Add 2FA messages 2018-05-14 00:53:46 +02:00
rafael59r2
54feb1097e Update messages_pt.yml (#1570) 2018-05-13 22:56:25 +02:00
ljacqu
c96e28f726 Add debug logging for teleports (relates to #1521) 2018-05-13 22:52:41 +02:00
ljacqu
b5c028301b Merge master into '1141-optional-additional-2fa-auth' 2018-05-13 18:54:19 +02:00
ljacqu
729c567dd5 #1141 Check that user is logged in before changing TOTP key
- Use PlayerCache to check that user is logged in where appropriate
- Add log statements
2018-05-13 18:49:40 +02:00
rafael59r2
4f9a869a46 Translation messages_pt.yml (#1569) 2018-05-13 15:15:01 +02:00
ljacqu
6f2f7a73af Merge branch 'master' of https://github.com/AuthMe/AuthMeReloaded into 1141-optional-additional-2fa-auth 2018-05-01 22:49:23 +02:00
ljacqu
1e3ed795c1 #1141 2FA implementation fixes
- Merge TotpService into TotpAuthenticator
- Add missing tests
- Migrate old 2fa enabled key to new one
2018-05-01 22:49:07 +02:00
ljacqu
d55b4bb3b5 #1561 Fix timing attacks by comparing hashes in constant time (#1563)
* #1561 Fix timing attacks by comparing hashes in constant time

* #1561 Fix timing attacks in phpBB fallback hashes
- As noted by @games647
2018-04-22 21:27:38 +02:00
ljacqu
ecdcaf2479 Fix failing tests 2018-04-22 13:26:51 +02:00
ljacqu
cff456c285 Help message updater: specify the name of the updated file 2018-04-22 12:51:41 +02:00
ljacqu
ecaffbabfc Small cleanups / changes amassed over time
- Small javadoc fixes
- Simplifications
- Move logException method from StringUtils to ExceptionUtils
2018-04-22 12:45:34 +02:00
ljacqu
29ac3a7022 #1141 Fixes to TOTP implementation
- Revert back to SHA1 as HMAC hash function so that it works with Google authenticator
- Add message to user to tell him to run /2fa confirm to add a TOTP code
2018-04-22 11:13:27 +02:00
ljacqu
de0e588cf3 Merge branch 'master' of https://github.com/AuthMe/AuthMeReloaded into 1141-optional-additional-2fa-auth 2018-04-22 07:14:05 +02:00
Gabriele C
baec034909
#1555 Add RegisterEvent and AuthMeAsyncPreRegisterEvent (#1559)
* #1555 Add RegisterEvent and AuthMeAsyncPreRegisterEvent

* Add missing javadoc
2018-04-21 13:02:14 +02:00
RikoDEV
5194f76f39 Update of the Polish translation by RikoDEV (#1560) 2018-04-21 02:24:27 +02:00
Gabriele C
d533f8e19c Fix unit testing
whoops
2018-04-19 12:09:07 +02:00
Gabriele C
6e16abc34e Don't purge users if unable to load permission data 2018-04-19 11:45:21 +02:00
Maxetto
71826db23d
Update messages_it.yml 2018-04-13 19:34:29 +02:00
RatchetCinemaESP
b56133fe8f Update messages_es.yml (#1553)
Translated lines:
- 83
- 103
- 104
2018-04-12 15:58:28 +02:00
Tony
1f9bf38755 Added EmailChangedEvent (#1549)
* Added EmailChangedEvent

* Fix failing tests

Silly.

* Documented the EmailChangedEvent

* Separate messages for cancelled email event

* Added lang todos for all the languages I can't speak

I wish I could though.

* Checkstyle satisfaction

* Changed log level to info for cancelled events
2018-04-03 17:45:27 +02:00
ljacqu
9326094d9c #1141 Fix review remarks by @games647
- Use SHA512 to generate keys instead of default SHA1
- Declare google authenticator dependency as optional and add relocation rule
2018-04-03 00:13:53 +02:00
ljacqu
2bf78dd186 Merge branch 'master' of https://github.com/AuthMe/AuthMeReloaded into 1141-optional-additional-2fa-auth 2018-04-02 23:44:19 +02:00
ljacqu
106dea1611 Minor: fix JavaDoc warnings 2018-04-02 23:43:52 +02:00
ljacqu
fc54c0311b #1539 Columns handler: finishing touches
- Add relocation rule for shading of the library
- Fix SQLite connection not being refreshed on reload
2018-04-02 23:19:13 +02:00
ljacqu
ad9e6dbb6d Merge branch 'master' of https://github.com/AuthMe/AuthMeReloaded into 1539-datasource-columns-integration 2018-04-02 22:33:26 +02:00
RikoDEV
68329a8761 Update messages_pl.yml (#1548) 2018-03-30 16:01:22 +02:00
games647
ee41d92216
Skip IP check for API registration 2018-03-29 14:08:33 +02:00
ljacqu
26472b6be3 #1539 Create common parent for SQLite and MySQL 2018-03-25 22:27:44 +02:00
ljacqu
4595a14191 #1539 Add support for columns that are not on player auth (is_logged, has_session) 2018-03-25 11:52:40 +02:00
ljacqu
137fc3d505 #1539 Use columns handler in more datasource methods; fix case-insensitivity for SQLite 2018-03-24 22:53:30 +01:00
ljacqu
881ef6a640 #1539 DataSource columns: close MySQL connections, add missing columns, use newly built-in types, improve column initialization 2018-03-24 21:16:43 +01:00
ljacqu
5a58f2c44f #1539 Integrate data source columns library
- Create wrapper around SqlColumnsHandler for AuthMe-specific behavior
- Integrate columns handler into first SQLite and MySQL method implementations
2018-03-24 12:24:43 +01:00
ljacqu
e9ab82db6b #1141 Make 2fa messages translatable, various cleanups (null safety, ...) 2018-03-21 23:56:13 +01:00
ljacqu
584a0bebbf Minor: Fix failing test after command change 2018-03-20 23:13:48 +01:00
ljacqu
f66a8a5b06 Merge branch 'master' of https://github.com/AuthMe/AuthMeReloaded into 1141-optional-additional-2fa-auth
# Conflicts:
#	src/main/java/fr/xephi/authme/permission/PlayerPermission.java
#	src/main/java/fr/xephi/authme/service/BukkitService.java
2018-03-20 23:07:25 +01:00
ljacqu
495cfc69a9 #1141 Move TOTP code during login as separate step: /2fa code
Rough version.
- Introduces a limbo player state on the LimboPlayer, allowing us to add further mandatory actions between successful (password) authentication and the ability to play on the server
2018-03-20 23:06:08 +01:00
Gabriele C
6251a69d3e Use the latest LuckPerms api methods 2018-03-20 10:42:17 +01:00
ljacqu
a1a909c01d #1531 Move spigot detection to BukkitService (#1534) 2018-03-19 23:08:48 +01:00
ljacqu
250bd0d148
Merge pull request #1517 from AuthMe/642-kick-on-fast-commands
#642 - Quick Command Protection
2018-03-19 22:35:49 +01:00
HexelDev
84f97ea1c2 Add QuickCommandsProtectionManager#processJoin(player) 2018-03-19 22:33:53 +01:00
ljacqu
af6bee59bd Merge branch 'master' of https://github.com/AuthMe/AuthMeReloaded into 1141-optional-additional-2fa-auth
# Conflicts:
#	src/main/java/fr/xephi/authme/datasource/MySQL.java
2018-03-19 22:32:16 +01:00
Gabriele C
8ee44e495b Decrease delay for connectPlayerOnLogin #1504 2018-03-19 17:30:53 +01:00
Gabriele C
3a690fd79a Change how we detect spigot #1531 2018-03-19 17:23:51 +01:00
Gabriele C
aab5d71efd Update sponsort details 2018-03-19 16:53:11 +01:00
games647
f33446ee25 Migrate to GEO IP 2 (Related #1471) (#1529)
* Migrate to GEO IP 2, because support will drop in April

* Change all links of maxmind to https
* Update maxmind database dependency and add javatar to extract
the database from the tar archive
(now only a small difference in jar file size -> ~80KB smaller)
* Verify downloaded archive using MD5 (There are no other checksums available)
* Migrate to Java NIO instead of old java file I/O (Feedback?)
* Internal Optional usage for nullable values (Feedback?)

Minor:
* Schedule a Bukkit async task instead of creating a thread manually
* Validate ip input string
* Extract validation into single method
* Close all resources safely using try-resources

* More https links

* Add documentation

* Set the same last modification as in the tar archive

* Fix tests

* Comment how the legacy API responded to unknown entries

* Document missing function param

* Document our maxmind dependency modifications

* Include time unit into constant

* More logging for downloading the database

* Add missing return if the database cannot be found

* Delete temporarily file after working with it
2018-03-17 03:00:24 +01:00
HexelDev
7790fa5796 typo 2018-03-15 21:53:27 +01:00
HexelDev
f5efd4bf23 Updating plugin.yml 2018-03-15 21:45:23 +01:00
HexelDev
66d1ee92c3 QuickCommandsProtectionManager Test class 2018-03-15 21:45:11 +01:00
HexelDev
900e8f2415 Updated messages 2018-03-15 21:44:49 +01:00
HexelDev
048a47ce6e Fixing PLayerListener kick message/tests 2018-03-15 21:43:36 +01:00
games647
7ff5801cfe
Revert "Fix no auto login permission (Fixes #118)" Wrong repo
This reverts commit 6d60e72296.
2018-03-15 20:43:50 +01:00
games647
6d60e72296
Fix no auto login permission (Fixes #118) 2018-03-15 20:42:50 +01:00
HexelDev
55b6f67550 JavaDocs 2018-03-15 20:20:40 +01:00
HexelDev
d2fbf12c3c Merge branches '642-kick-on-fast-commands' and 'master' of https://github.com/AuthMe/AuthMeReloaded into 642-kick-on-fast-commands 2018-03-15 19:47:11 +01:00
ljacqu
fddb3bf265 Fix minor Checkstyle violations
- Mostly missing JavaDoc, some line lengths
2018-03-11 19:08:21 +01:00
ljacqu
ff0a7e1f89 Fix failing test 2018-03-11 16:34:25 +01:00
HexelDev
fe4d5e7c0d Saving user join and check on command 2018-03-10 19:13:23 +01:00
ljacqu
15f49dcbb3 Merge branch 'global-replacements' 2018-03-10 16:59:56 +01:00
ljacqu
1a53cd11b2 #829 Move CommandSender / name to first argument to avoid confusion with varargs
- Overloaded method with (String, String...) as args was problematic as it could be confusing on its own and also confusing with the (CommandSender, String...) flavor
2018-03-10 16:58:30 +01:00
ljacqu
eb9cd31a65 #1141 Split TOTP permissions for add/remove, refactor TOTP services
- Split TotpService further into GenerateTotpService and TotpAuthenticator, which wraps the GoogleAuthenticator impl
- Add missing tests for the services
- Change GenerateTotpService's interface to behave like a collection for more intuitive method behavior
2018-03-10 16:21:53 +01:00
ljacqu
e72d5d5e81 #1141 Require TOTP code to be passed with /login (temporary)
- Temporarily require the TOTP code to be provided with /login
- Future implementation should require it as a second step
2018-03-09 18:37:01 +01:00
ljacqu
c3cf9e3ee0 #1141 Rough version of TOTP commands to add and remove a code for a player 2018-03-07 20:11:53 +01:00
Maxetto
7a3e2e9f71 Use spaces instead of tabs 2018-03-07 19:37:20 +01:00
Maxetto
bc4cb5046d Fix yet another build 2018-03-07 19:29:24 +01:00
Maxetto
9b7139a17a Add Display Name tag replacement too
#1509
2018-03-07 19:08:36 +01:00
HexelDev
844bd24221 Fixed minor code issues 2018-03-05 21:00:24 +01:00
HexelDev
11d039c818 space after 'if'(s) 2018-03-05 20:20:25 +01:00
ljacqu
9954c82cb6 #1141 Add TOTP key field to database and PlayerAuth
- Add new field for storing TOTP key
- Implement data source methods for manipulation of its value
2018-03-05 19:50:58 +01:00
Maxetto
f9d1a3aef2 Those were not meant to be there 2018-03-05 19:42:43 +01:00
Maxetto
00de15016a Follow remarks
#1509
2018-03-05 19:38:24 +01:00
HexelDev
57809194f3 Renaming function hasValidSessionData -> fetchSessionStatus 2018-03-04 19:45:05 +01:00
HexelDev
be2c6ae116 Fixing tests 2018-03-04 19:23:08 +01:00
HexelDev
9db38a3bf4 SessionService#hasValidSessionData description update 2018-03-04 18:38:46 +01:00
HexelDev
5abc9b9d45 'session expired' message spam fix 2018-03-04 18:36:21 +01:00
HexelDev
c0e1b8082f #642 - Quick Command Protection manager 2018-03-04 17:32:16 +01:00
games647
914c4adc0b
Fix ProtocolLib services are disabling after authme reload
Using the previous else branch we would always call unregister if the feature
was enabled before.
2018-03-04 14:29:08 +01:00
Gabriele C
930f5609bf
Merge pull request #1513 from Maxetto/patch-3
Fix last commit
2018-03-02 13:43:59 +01:00
Maxetto
6c168b6b13
Fix last commit 2018-03-02 12:18:36 +01:00
Gabriele C
9f978ef53a
Merge pull request #1512 from Maxetto/patch-3
Remove VIP status to OP by default
2018-03-02 03:33:08 +01:00
Maxetto
fe075a5c60
Remove VIP status to OP by default
Closes #1040.
2018-03-01 18:04:30 +01:00
Maxetto
3541f21985
I forgot this wasn't Apache's StringUtils 2018-02-28 18:25:50 +01:00
Maxetto
2aaf58182c
Be able to replace sender name in every message
Closes #829
2018-02-28 16:18:08 +01:00
ljacqu
8d5afa7fbc Minor: Use CommonService for permission lookup
- Some changes found in a very old patch :) - drop injection of PermissionsManager in favor of CommonService
- Rename IsEqualByReflectionMatcher's method to something more specific to differentiate it better from Hamcrest's equalTo() matcher
2018-02-23 23:37:24 +01:00
ljacqu
329657bd5f
#1497 Show specific message for invalid YAML files (#1506)
* #1497 Throw dedicated exception for invalid YAML files and handle it on startup
- Wrap SnakeYAML exceptions when loading config.yml and commands.yml on startup into own exception type
- Handle exception type on startup with specific error message

* #1497 Fix inaccurate JavaDoc comment
2018-02-23 23:31:22 +01:00
ljacqu
7864bb06ac Minor cleanups
- Fix line length violations
- Add JavaDoc to some longer methods
- Remove unused imports
2018-02-23 23:23:24 +01:00
ljacqu
83e247afe9 Minor: Simplify check for Spigot 2018-02-17 23:23:44 +01:00
ljacqu
90400650c3 Merge branch 'master' of https://github.com/AuthMe/AuthMeReloaded into 1467-message-keys-hierarchy 2018-02-17 23:08:39 +01:00
ljacqu
9dd4039fdd #1467 Create backup before migrating; output newly added message keys
- Extract logic for creating a backup timestamp into FileUtils
2018-02-13 22:15:03 +01:00
Gabriele C
1626274e9d Try to solve #1498 2018-02-12 23:37:22 +01:00
Gabriele C
9ef5a983cc Fix #1482 2018-02-12 23:00:10 +01:00
ljacqu
ffeb04c0a2 Merge branch 'master' of https://github.com/AuthMe/AuthMeReloaded into 1467-message-keys-hierarchy
Conflicts:
	src/main/resources/messages/messages_ko.yml
2018-02-11 09:47:07 +01:00
ljacqu
189647d9f2 #1467 Fix character issues by always using UTF-8 when reading and writing
- Change usages of Bukkit's FileResource to a ConfigMe PropertyReader
- Specify UTF-8 for reading and writing
2018-02-11 09:22:42 +01:00
Adeuran
8186300349 Update messages_ko.yml (#1499)
* Update messages_ko.yml

Additional Translate by Adeuran(아몬드노란맛 http://adeuran.tistory.com)

* Some of Korean Translate to English

자동가입방지문자 -> CAPTCHA

* Update messages_ko.yml
2018-02-07 19:12:06 +01:00
sgdc3
6a5f335e16 Implement #1483 2018-02-04 15:12:23 +01:00
ljacqu
cd61febd76 #1467 Change /authme messages to only update help text file now 2018-02-02 20:12:42 +01:00
ljacqu
1d6d9eb764 #1467 Rearrange old keys migration so no entries get lost
- 'error' was an old entry but now we have multiple entries under 'error' (which is now a section), so we need to ensure that we migrate the old 'error' entry before the migration sets anything under that path
2018-02-02 19:40:28 +01:00
ljacqu
f44353ed4c #1467 Fix messages verification tool task + remove empty messages in YML files 2018-02-01 23:09:08 +01:00
ljacqu
f67ddb0c77 #1467 Migrate all message files, make sure migrater keeps predefined order 2018-02-01 20:23:06 +01:00
ljacqu
abd19cdb86 #1467 Fix error in placeholder migration, create and fix tests 2018-01-29 22:15:39 +01:00
ljacqu
760a2a909c #1467 Fix export issues (style, encoding)
- Override yaml file resource to ensure that lines aren't wrapped
- Override yaml file reader to ensure the file is always read as UTF-8
2018-01-29 21:46:58 +01:00
ljacqu
f714e9d564 #1467 Change message keys and messages_en to new structure 2018-01-29 20:56:30 +01:00
ljacqu
dfe47066cd Merge branch 'master' of https://github.com/AuthMe/AuthMeReloaded into 1467-message-keys-hierarchy 2018-01-29 20:04:38 +01:00
sgdc3
a92084ec60 Fix the deploy system 2018-01-29 15:08:59 +01:00
games647
be55437287
Use the correct javadoc deprecated tag for the lastlogin method 2018-01-27 22:56:42 +01:00
DNx
f7e9ac9685 Add support for delaying commands. 2018-01-26 14:28:02 +07:00
ljacqu
1eaf321575 #1467 Try to clean up abstract message file handler hierarchy
- Move some handling with the default file configuration down to the help message file handler since it is the only one with such a behavior now
2018-01-25 21:48:48 +01:00
ljacqu
820e443b81 #1467 Implement messages file migration
- Create messages updater called when a messages YML file is loaded
  - Work in progress
- Does not yet include changes to any message keys
2018-01-24 22:19:25 +01:00
ljacqu
b3a191d7e2 Minor: simplify CheckMessageKeyUsages task and make check more strict 2018-01-22 19:56:51 +01:00
Maxetto
0b096ea56e
[Messages_IT] Add specific message for register captcha success 2018-01-21 23:42:37 +01:00
ljacqu
6f2c586441 Test initialization of permission handlers in PermissionManager 2018-01-21 22:11:47 +01:00
ljacqu
610a699c95 Refactor message handlers into injectable components (preparation for #1467) 2018-01-21 20:47:29 +01:00
ljacqu
847991b658 #1474 Don't log /email changepassword command (exposes password) 2018-01-21 19:06:51 +01:00
ljacqu
761ee2f05b #1035 Migrate other accounts config from config.yml to commands.yml 2018-01-21 18:58:20 +01:00
Playhi
ad7a0ffe9b
Update messages_zhcn.yml
theCaptcha
2018-01-20 19:43:51 +08:00
Playhi
35e9858c30
Update messages_zhcn.yml 2018-01-19 21:27:00 +08:00
ljacqu
1e16f251ef
Merge pull request #1477 from AuthMe/1035-handle-alt-accounts-in-commandsYml
1035 handle alt accounts in commands yml
2018-01-17 21:49:29 +01:00
ljacqu
fe4ea6d22b Remove migration of commands from config.yml to commands.yml
- Migration was shipped with the 5.2 release and is now becoming harder to maintain; since it's quite old we drop it
2018-01-17 21:42:17 +01:00
Gabriele C
cdd14bee18
Merge pull request #1475 from RikoDEV/patch-3
Update messages_pl.yml
2018-01-17 20:30:03 +01:00
Jacek Maciejak
fb989a8955
Update messages_pl.yml 2018-01-17 18:40:27 +01:00
Jacek Maciejak
cc701772f4
Update messages_pl.yml 2018-01-17 18:36:06 +01:00
Jacek Maciejak
045bb1b669
Update messages_pl.yml 2018-01-17 18:33:46 +01:00
ljacqu
7f77f30439 Minor: Fix forgotten param documentation in JavaDoc 2018-01-16 20:40:21 +01:00
ljacqu
f19f8502d8 #1035 Forced commands: add more tests, rename account constraints, update commands.yml comments 2018-01-16 20:32:17 +01:00
ljacqu
3c0236e15e #1035 Fix handling of new login command constraints
- Incorporate ConfigMe fix
- Various fixes in the integration
2018-01-15 22:39:29 +01:00
RatchetCinemaESP
8a44dad548
Fix error in placerholder
<theCaptcha>
2018-01-15 17:45:43 +01:00
RatchetCinemaESP
0bbe109b55
Update messages_es.yml
1. Fix one error in current translation (Line 88)
2. Translated two strings of Captcha. (Line 101 & 102)
2018-01-15 17:13:09 +01:00
Jacek Maciejak
95bbbd9ba0
Update messages_pl.yml 2018-01-15 15:40:49 +01:00
ljacqu
8dbba1dc93 #1035 Add optional constraints to onLogin and onFirstLogin commands for number of alt accounts
- Extend Command to add specific constraints
- Currently doesn't work because of missing ConfigMe support
2018-01-14 12:23:04 +01:00
ljacqu
1cd5a6acce #1472 Add zhtw translation changes by @haer0248 2018-01-14 11:16:23 +01:00
ljacqu
d9c1af4311 #1454 Run other accounts command in sync mode 2018-01-08 23:08:37 +01:00