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
ljacqu and GitHub
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
ljacqu and GitHub
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
ljacqu and GitHub
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
ljacqu and GitHub
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
ljacqu and GitHub
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
ljacqu and GitHub
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
ljacqu and GitHub
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
ljacqu and Gabriele 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
ljacqu and GitHub
9385fc8f4c
Fix placeholders in messages_ko
2017-05-28 21:35:15 +02:00
ljacqu and GitHub
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
ljacqu and Gabriele 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
ljacqu
07633a89c8
Create SQL data source utils class
...
- Extract logic used in SQLite and MySQL for logging and closing SQL objects
- Decided to leave buildAuthFromResultSet methods individually as this might be more implementation-specific
- Rename DataSource#close to DataSource#closeConnection to fix conflict with static import
2017-04-18 22:55:39 +02:00
ljacqu
04ca36fe53
Use more specific query to get logged in players without email
...
- Reduces the amount of data returned from the DB and the work required to build objects
2017-04-18 22:30:54 +02:00
ljacqu
2f7ebc0ecb
Remove static PlayerCache#getInstance
2017-04-18 21:57:20 +02:00
ljacqu
b0c05afaa7
Create util method to check if email is empty
...
- Create method to check if email is empty or the default AuthMe email (avoids repetition)
- Check that input email has '@' inside text (relates to #1105 )
2017-04-18 21:24:33 +02:00