Commit Graph
100 Commits
Author SHA1 Message Date
ljacqu 6365926cf0 Fix test in AntiBotServiceTest 2017-11-23 20:06:21 +01:00
ljacqu 53f7bf155f Fix wrong check in CodeClimateConfigTest 2017-11-23 18:13:17 +01:00
ljacqu 1053440b15 Refactor util for setting BukkitService mock behavior
- Move helper methods for setting BukkitService mock behavior into their own class
- Change methods to use Mockito's answer instead of verification + argument capture -> calling the methods now belongs to the test setup (given clause) and allows the behavior to take effect more than once
2017-11-22 00:24:11 +01:00
ljacqu 4717dc148c #1413 Don't run onUnregister command in async 2017-11-21 23:48:15 +01:00
ljacqu c693901330 Merge branch '1400-phpbb-hash' of https://github.com/AuthMe/AuthMeReloaded 2017-11-04 11:32:44 +01:00
ljacqu 5c40cb3b73 Insert null email as DEFAULT so column default may take effect
Ugly implementation to fit into AuthMe 5.4. If email on PlayerAuth is null, do not supply NULL as the email value but use DEFAULT instead so that the default value is used if present in the column configuration.
2017-11-04 11:29:21 +01:00
ljacqu 7d6c61258b Fix #1401 bungeecord message sent even if disabled 2017-11-04 10:17:52 +01:00
ljacqu 80ab41ae5a #1400 Sync AuthMe's phpBB hash implementation with phpBB3's
- phpBB3 seems to favor using BCrypt $2y$ now
- Keep unsalted MD5 and phpass salted MD5 comparisons for backwards compatibility
2017-11-04 09:58:51 +01:00
ljacqu c7ba06e2b9 Fix test / use new DataSource method / add space before keywords 2017-11-03 19:57:40 +01:00
ljacqu 44a7baff9a #1350 Add option to force using the sync PlayerLoginEvent
- Introduce new configuration (taken from @sgdc3)
- Create JoiningPlayer, based on a Player object or String name, determining how permissions will be checked
2017-11-01 21:02:22 +01:00
ljacquandGitHub e3dd719b0e #792 Migrate last IP column if is NOT NULL without default value (#1385)
- Move MySQL migrations into a separate class
- Add migration for last IP column to be nullable if it has a not null constraint without a default value
2017-10-29 07:52:11 +01:00
ljacqu 2c6181d150 Add missing tests for API package 2017-10-28 23:15:53 +02:00
ljacqu b687c68d46 Create test for HelpTranslationGenerator 2017-10-28 19:36:35 +02:00
ljacquandGitHub 8127d70058 Merge pull request #1386 from AuthMe/1367-mysql-notNull-toggle
Improve MySQL not null toggle / authme debug commands output
2017-10-28 18:49:23 +02:00
ljacqu 20ca4f9dc9 #1368 Improve the look of /authme debug
- Add a colored title for each command execution within /authme debug
- Fit more texts on one line
2017-10-28 17:19:47 +02:00
ljacqu c6fbc1187f #1367 MySQL not null changer: List 'not null' and default values separately
- Check not only for NOT NULL constraint but also if a column has a default value
- Use suffixes instead of colors only so the command is usable via console
2017-10-28 15:41:16 +02:00
ljacquandGitHub 04c5224e99 #1190 Show settings warnings on reload also (#1384)
- Extract setting checks into their own class, called on startup and reload
2017-10-28 14:15:38 +02:00
ljacqu d40109929c Fix describeHashAlgos tool task
- Handle case when Argon2 library is not loaded
- Account for hash algorithms with `null` as associated impl. class
2017-10-28 13:40:06 +02:00
ljacqu fbd8049af5 Minor: Make email check in '/email change' case-insensitive 2017-10-28 13:10:24 +02:00
ljacqu 78e2763984 Help translations: remove entry for /authme purge second argument (no longer exists)
- Remove unknown entries as found by the verifyHelpTranslations tool task
2017-10-22 09:51:32 +02:00
ljacqu 07b4309340 Readme: fix team link and mention of now deprecated hashes 2017-10-22 09:37:49 +02:00
ljacqu b211c97395 Minor: delete PlainText implementation
- It never gets used anymore and could cause security issues if we did accidentally use it as EncryptionMethod
2017-10-22 09:27:03 +02:00
ljacquandGitHub d6e2369f36 #792 Force migration of SQLite when necessary (#1371)
- Detect if a migration is necessary
- Create a backup
- Perform the migration
2017-10-22 09:16:48 +02:00
ljacqu c37c0ce436 Fix CodeClimate config test to account for new test exclusion entry 2017-10-21 19:55:56 +02:00
ljacqu 6cf2535109 Exclude test classes from Checkstyle checks 2017-10-21 19:51:48 +02:00
ljacqu 4e8deec258 Move #isNpc method to PlayerUtils
- After dropping our hook to CombatTagPlus it is not relevant for it to be in PluginHooksService anymore
2017-10-21 12:08:23 +02:00
ljacqu 58657f5d3f Merge branch 'master' of https://github.com/AuthMe/AuthMeReloaded into 792-add-registration-date-and-ip 2017-10-21 10:46:17 +02:00
ljacqu 1651a61063 #792 #814 Implement SQLite migration, allow last IP to be nullable in MySQL
- Old SQLite setups have the last IP column as NOT NULL but without a default value. With the new concept (where we don't set a last IP on player registration) it fails.
  - Create an /authme debug child that allows to migrate SQLite (tricky because SQLite does not support dropping or modifying columns)
  - Allow last IP column to be NOT NULL in MySQL as well (extend MySQL /authme debug child)
- Add TODO comments with follow-up issue to extend our commands with new registration IP field
2017-10-21 10:45:48 +02:00
ljacqu b5ea48085c #792 DataSource: when creating registrationDate column, set all rows to the current date 2017-10-20 21:31:58 +02:00
ljacqu a425eacf2d #792 Add missing tests / fix CodeClimate issues 2017-10-20 17:49:30 +02:00
ljacqu ea824ea3f0 #1016 Update hash algorithms list, add test that Deprecated annotation is in sync between enum and hash impl. class 2017-10-19 21:52:55 +02:00
ljacqu fca77b940f #1016 Deprecate MD5, SHA1, SHA512: no longer allowed for active use
- Deprecate unsalted hashes: if such a hash is configured, move it to the legacy hashes setting to still support the existing hashes in the database but hash all passwords from now on with our default, SHA256.
2017-10-19 21:30:19 +02:00
ljacqu 7d445217d6 Merge redundant ConsoleLogger#debug overloads
- No need to distinguish between String[] and Object[] because log4j only has methods for Object[]
2017-10-19 20:14:17 +02:00
ljacqu 90073ef95d Merge branch 'master' of https://github.com/AuthMe/AuthMeReloaded into 792-registration-date-and-ip
Conflicts:
	src/main/java/fr/xephi/authme/command/executable/authme/RegisterAdminCommand.java
	src/main/java/fr/xephi/authme/datasource/Columns.java
	src/main/java/fr/xephi/authme/datasource/SQLite.java
	src/main/java/fr/xephi/authme/process/join/AsynchronousJoin.java
	src/main/java/fr/xephi/authme/service/SessionService.java
	src/main/java/fr/xephi/authme/settings/properties/DatabaseSettings.java
	src/test/java/fr/xephi/authme/service/SessionServiceTest.java
	src/test/resources/fr/xephi/authme/datasource/sql-initialize.sql
2017-10-15 23:45:41 +02:00
ljacqu ea58e20c3d #792 Include registration date into purging logic
- Take MAX(reg_date, login_date) as timestamp to compare against
- Remove the second "all" parameter to include entries with 0 registration date -> we expect registration date to always be set to the current date, so the parameter becomes obsolete
2017-10-15 18:29:01 +02:00
ljacqu 1df5308e56 #792 #814 Create command to remove NOT NULL constraints
- Create command under /authme debug that allows to change the 'nullable' status of MySQL columns (currently last date and email only)
   - We need to offer a default value for forum integrations that have a NOT NULL email column. Offering a command avoids us from force-migrating existing databases while still offering migrations in both directions
- Change in default value handling: lack of values are not handled by setting default values to the PlayerAuth anymore, and reading a default value from the database into a PlayerAuth will be translated into null by the PlayerAuth builder
- When a new database is created, email and lastlogin are now nullable and lack a default a value

Open points:
- Finish MySqlDefaultChangerTest
- Revise purging logic (#792)
- Allow to have more columns nullable (#814)
2017-10-15 12:56:13 +02:00
ljacqu 718c38aa24 Fix failing LoginSecurityConverterTest: allow tolerance for java.sql.Date to millis conversion 2017-10-14 19:51:26 +02:00
ljacqu 52d6476058 #792 Add columns for registration IP and registration date
- Add columns for reg date and IP
- Rename "ip" to "last IP"
2017-10-14 17:37:34 +02:00
ljacquandGitHub 7afda20288 #1338 Implement ''/authme messages help' to generate a fully complete help text file (#1349) 2017-10-09 07:19:38 +02:00
ljacqu 5be3f8facc #1095 Update SMF hash algorithm to generate salt as SMF does
- The salt isn't used for password hashing but SMF requires that there be one to generate the authentication cookie. This does not yet enable registration from Minecraft: SMF has other non-null columns that need to be tackled. This is a first step.
2017-10-08 22:42:37 +02:00
ljacqu f21605bbb1 Fix failing test 2017-10-08 20:08:46 +02:00
ljacqu 83d6d92a5c Minor - don't read welcome message if unused 2017-10-08 20:05:04 +02:00
ljacqu 5b1d8c6429 Use String#replace over String#replaceAll (the latter uses regex) 2017-10-08 17:32:05 +02:00
ljacqu f1bed873d5 Minor - remove code duplication 2017-10-08 01:22:25 +02:00
ljacqu 278146a206 Merge branch '1347-change-password-api' of https://github.com/AuthMe/AuthMeReloaded 2017-10-05 23:47:19 +02:00
ljacqu 867b32194b #1347 Adapt tests for new change password architecture 2017-10-05 23:44:16 +02:00
ljacqu 6fa2fdbdda #1345 Update to injector 0.4.1 2017-10-05 23:02:58 +02:00
ljacqu 37dc918ece Minor: remove commented out code 2017-09-30 17:44:34 +02:00
ljacqu bd7d84a6d2 Small docs cleanup
- NewAPI class will be removed in 5.5, not 5.4
- Add entry for "Deprecated" recommendation in hash algorithms page
- Mention possibility of wildcards for restricted user rules
2017-09-17 11:33:24 +02:00
ljacqu 649b027e5b Output used permission system in /authme debug perm 2017-09-17 09:09:11 +02:00
ljacqu acfc35283d Update translations page 2017-08-11 22:32:46 +02:00
ljacquandGitHub 3df2dd5740 CZ update by Shadowhackercz (#1310)
* Last changes for CZ language file

* Last few changes
2017-08-10 22:22:28 +02:00
ljacqu df2fe2ea89 Add missing apostrophe 2017-08-07 22:19:25 +02:00
ljacqu 30cb55dabd Update translations page 2017-08-05 14:07:02 +02:00
ljacquandGitHub a801f03cf2 Merge pull request #1296 from AuthMe/5.4-Dev
Merge 5.4 development
2017-07-29 15:25:01 +02:00
ljacqu 027d0fc775 Create TestHelper method to make Settings mock return defaults 2017-07-23 18:00:51 +02:00
ljacqu efc06ef2a6 #1255 Create resource-closing tests for the MySQL extensions
- Remove test runs with different hash algorithms in the abstract super class
- Create resource-closing tests for the new extension classes
2017-07-23 17:29:36 +02:00
ljacqu 8eceaa8cbb #1255 Simplify MySQL data source extensions
- Mostly oving the logic of getting the ID from the DB to the extensions superclass
2017-07-23 16:38:35 +02:00
ljacqu cbc794ba20 #1255 Extract forum-specific data source actions into separate extension classes 2017-07-23 14:19:28 +02:00
ljacqu 870810a230 Merge branch 'master' of https://github.com/AuthMe/AuthMeReloaded into 5.4-Dev 2017-07-23 12:12:16 +02:00
ljacqu f88350b06d Fix Checkstyle violations
- Mostly missing Javadoc on large methods
- CommandInitializer: split command building method into multiple methods
2017-07-16 23:07:13 +02:00
ljacqu 4ac980111d Add some tests, minor Checkstyle fixes 2017-07-16 13:00:55 +02:00
ljacquandGabriele C 7c48cf59c7 Make default regex for password characters more user-friendly (#1285)
- Change regex pattern per input of @sgdc3
- Add clarifying comments
2017-07-15 19:38:05 +02:00
ljacqu 822818cf33 Revert: Fix default password regex
- The regex pattern allows all visible, non-whitespace ASCII symbols, including '0'
2017-07-15 18:41:01 +02:00
ljacqu e1826c75c8 #1280 Add NOTHING as possible flight restore type 2017-07-10 21:45:05 +02:00
ljacqu 276ce80edb #1276 Fix wrong multiplication of reset threshold 2017-07-09 14:31:17 +02:00
ljacqu f3a656892f Open 5.4 development iteration 2017-07-08 23:21:53 +02:00
ljacqu cb73160bcd Minor - simplify CodeClimateConfigTest
- No need to load the class when we just want to ensure that the file exists
2017-07-08 23:10:42 +02:00
ljacqu 6badd15662 Merge branch 'StoreAllGroups' of https://github.com/AuthMe/AuthMeReloaded 2017-07-02 11:02:47 +02:00
ljacqu f150668fc1 Minor - remove unused imports
- As determined by CodeClimate
2017-07-02 11:00:17 +02:00
ljacqu ff99b63385 #1265 Limbo: fallback to old "group" during deserialization, favor old limbo's groups over new limbo's 2017-07-02 10:55:51 +02:00
ljacqu 886e3b2f1e #1238 Save player after restoring data from limbo player 2017-06-18 08:36:03 +02:00
ljacqu 08214aeee6 Debug limbo viewer: don't get primary group if not supported
- Reported via #1238, the primary group of a player should not be queried if the permissions plugin does not have group support
- Use the reverse order for showing player / limbo / disk limbo info
2017-06-11 15:14:32 +02:00
ljacqu 591d6f1d4c #1232 #1239 Show legacy hint if Guava's MoreObjects class is missing 2017-06-02 15:42:21 +02:00
ljacquandGitHub 9385fc8f4c Fix placeholders in messages_ko 2017-05-28 21:35:15 +02:00
ljacquandGitHub 56dff703ac Korean translation by Kirito9515 (#1229)
* Korea Translation Change

* Korean Translation Change 2

* Korean Translation Final

* Help Message Korean Translation

* Korean Translation
2017-05-28 18:50:34 +02:00
ljacqu 5ca9112c12 Add missing properties to commands.yml on start and reload 2017-05-21 14:21:40 +02:00
ljacqu 5c6af0330e #1218 Add onLogout to commands.yml 2017-05-21 13:44:28 +02:00
ljacqu 1c46c92b4e #1146 List available converter, reference converters Wiki page in config.yml 2017-05-21 12:28:35 +02:00
ljacqu 5afe6bb35b Update dependencies
- Remove unused exec plugin
2017-05-20 19:15:13 +02:00
ljacqu e5bfbf6304 #1023 LoginSecurity converter: fix last login conversion, extend test 2017-05-13 09:37:36 +02:00
ljacqu 2021113732 #1023 Create LoginSecurity converter 2017-05-10 19:45:20 +02:00
ljacqu 1f8307c8f6 Fix minor checkstyle issues
- Add JavaDoc where checkstyle expects it
- Fix line too long issues
- ...
2017-05-07 11:59:01 +02:00
ljacqu 1a48348824 Add missing tests for listeners 2017-05-07 09:43:59 +02:00
ljacqu 6ecb0ea75c Create test to verify that messages have their tags 2017-05-06 21:36:31 +02:00
ljacqu 57cd2e4caf Fix placeholders in translations + update translations page 2017-05-05 21:28:38 +02:00
ljacquandGabriele C c803822fa8 #1188 Create and keep encryption method instance (#1191)
- Avoid creating the same object over and over; instead keep it and only change it on settings reload
2017-04-30 17:41:51 +02:00
ljacqu e0e4cd112d #761 Restore permission group in sync with limbo players
- Couple AuthGroupHandler closer to the LimboService: whenever a limbo player is restored, the auth group should be restored as well. This fixes some consistency issues.
- Move AuthGroupHandler into limbo package and make it package-private
- Change permission handler to skip any empty groups (prevents odd command output e.g. for BukkitPermissions)
2017-04-29 22:37:34 +02:00
ljacqu d4c1370da6 #923 Add commands to run on unregister 2017-04-29 19:11:13 +02:00
ljacqu 578f63b944 #923 Create /authme purgeplayer command
- Create command to purge a specific player name
- Update docs
2017-04-29 18:31:37 +02:00
ljacqu 88d839cab4 #620 Add a cancellable session restore event 2017-04-29 15:44:29 +02:00
ljacqu b652d89088 #1169 Create UnregisterEvent 2017-04-29 15:22:27 +02:00
ljacqu d65556d893 #857 Create event for failed authentication 2017-04-29 14:46:06 +02:00
ljacqu a75150e7bf #836 Update HU translations by @rErEaT 2017-04-29 09:28:58 +02:00
ljacqu b7c35cb3a7 Merge branch 'master' of https://github.com/AuthMe/AuthMeReloaded into explicit-getters-from-db 2017-04-29 08:19:30 +02:00
ljacqu 82d74ca0a7 Move close methods out of sql datasource utils class
As noticed by @Gnat008
- We need two different implementations for MySQL and SQLite because SQLite uses an older version where #isClosed is not implemented
2017-04-29 08:18:43 +02:00
ljacqu 0e923b6a70 #1180 Create command for performing a backup 2017-04-23 20:23:40 +02:00
ljacqu d0dbc14358 Minor - fix some small todo's 2017-04-23 11:02:43 +02:00
ljacqu e56a3c0ab6 #815 Save yaw & pitch for last login in SQL data sources 2017-04-22 13:30:03 +02:00
ljacqu 70298a830b Remove outdated todo 2017-04-21 20:29:50 +02:00