Commit Graph

930 Commits

Author SHA1 Message Date
Dane Everitt d69f816d9d
Add handler to fetch all of the system permissions and load them into the state 2019-11-03 17:37:06 -08:00
Dane Everitt 867dbf3bd2
Update all the client API endpoints to use new permissions codes 2019-11-03 17:13:47 -08:00
Dane Everitt 543884876f
Add basic subuser listing for servers 2019-11-03 12:20:11 -08:00
Dane Everitt 0b9c6bd21d
Proxy file downloads through the panel rather than having to get creative with download tokens 2019-10-26 14:36:37 -07:00
Dane Everitt ac52810ef6
Don't try to parse JSON being returned from the API 2019-09-29 15:32:22 -07:00
Dane Everitt 326d346f92
Handle errors sent back over the sockt 2019-09-28 13:09:47 -07:00
Dane Everitt 030b8ed4fd
Change to support websocket JWT connections 2019-09-24 21:22:11 -07:00
Dane Everitt 18c4b951e6
First pass at converting websocket to send a token along with every call 2019-09-24 20:20:29 -07:00
Dane Everitt 67ff67a1bd
Add endpoints to return a server's egg configuration 2019-09-22 15:30:53 -07:00
Dane Everitt 086018751d
Add underlying code to handle authenticating websocket credentials 2019-09-08 17:48:37 -07:00
Dane Everitt b99ea53ca1
Update client API endpoints to not use deprecated function 2019-09-05 21:41:20 -07:00
Dane Everitt 7543ef085d
Format files 2019-09-05 21:32:57 -07:00
Dane Everitt 26e4ff1f62
Update to use new repository and standard laravel notation for controllers 2019-09-05 21:31:12 -07:00
Dane Everitt 62cd03d684
Fix command sending error handling and bad assertion order 2019-09-05 21:16:36 -07:00
Dane Everitt ee0da206c1
Update command sending from server API to use new daemon code 2019-09-05 21:11:19 -07:00
Dane Everitt 161e0f6165
Deprecate old way of using repositories for daemon things 2019-09-05 20:33:27 -07:00
Dane Everitt bd8b708c32
[L6] Update cache methods to use defined times and not ints 2019-09-04 20:24:46 -07:00
Dane Everitt fb9c106448
Update server listing and associated logic to pull from the panel dynamiacally 2019-08-17 16:03:10 -07:00
Lance Pioch 37631a1d49 Missing return statement (#1673)
Otherwise this errors out with $host not being found
2019-08-10 13:19:52 -07:00
Dane Everitt 81143e231a
Merge branch 'master' into develop 2019-08-04 13:49:26 -07:00
Dane Everitt eb81e1ed20
Support special characters in database password, closes #1508 2019-08-03 14:42:32 -07:00
Dane Everitt 81409947cf
Default to OOM killer being disabled, add back configuration option per-server 2019-08-03 13:41:24 -07:00
Dane Everitt fe9d86b66b
Add support for filtering servers in client list-all endpoint
closes #1608
2019-08-03 12:44:15 -07:00
Dane Everitt 02ac308042
Fix database host modification not properly showing SQL errors
This is caused by an old bug relating to not rolling back transactions properly causing session data to not be flashed back to the user properly.
2019-08-03 12:33:28 -07:00
Dane Everitt c90fcea519
Add basic file listing functionality 2019-07-27 20:23:51 -07:00
Dane Everitt 48c39abfcb
Add database password rotation to view 2019-07-27 15:17:50 -07:00
Dane Everitt 212773d63c
Finish authentication flow for 2FA 2019-06-22 13:33:11 -07:00
Dane Everitt 56640253b9
Merge branch 'release/v0.7.14' into feature/react 2019-06-22 12:28:44 -07:00
Dane Everitt 092e7e79ff
Change 2FA service to generate the secret on our own and use an external QR service to display the image 2019-06-21 21:55:09 -07:00
Dane Everitt 2db7928b76
Don't expose existence of account when an incorrect password is provided and the user has 2FA enabled 2019-06-21 21:39:24 -07:00
Dane Everitt 19ef901768
Show success message to the user 2019-06-11 23:19:43 -07:00
Dane Everitt bfdc1f766b
Support saving existing files 2019-05-27 15:30:49 -07:00
Dane Everitt a8462bf109
Add initial support for opening a file in the file manager, still needs more work 2019-05-25 16:24:13 -07:00
Dane Everitt d79fe6982f
Add support for file copy and deletion 2019-05-04 17:26:24 -07:00
Dane Everitt 811026895b
Update support for moving/renaming files and folders 2019-05-04 16:04:59 -07:00
Dane Everitt 95d19bf09e
Update logic that handles creation of folders for a server 2019-05-01 21:45:39 -07:00
Dane Everitt 5c99cae779
Merge branch 'develop' into feature/vuejs 2019-05-01 20:57:49 -07:00
Dane Everitt c80c8564b8
Switch file manager listing to use panel API endpoint 2019-05-01 20:54:40 -07:00
Dane Everitt 0757d8856b
Add base code to support retrieving allocations as a client 2019-03-23 17:47:20 -07:00
Arnaud Lier 4460b6835a Match original database password length when doing a password reset (#1509) 2019-03-23 14:04:57 -07:00
Dane Everitt 8955b5a660
Initial attempt trying to get file downloading to work 2019-03-16 17:10:04 -07:00
Dane Everitt a66d7a3417
Merge branch 'develop' into feature/vuejs 2019-03-09 11:19:07 -08:00
Dane Everitt f15449f17b
Fix servers not being marked as install failed 2019-03-03 13:44:28 -08:00
Dane Everitt d9593b23ab
Paginate server results when viewing a node, closes #1404 2019-03-02 15:58:56 -08:00
Lance Pioch db937af616 Apply fixes from StyleCI
[ci skip] [skip ci]
2019-01-26 23:26:15 +00:00
Dane Everitt 136e4b5b7b
Fix some issues 2018-12-30 12:45:57 -08:00
Dane Everitt 21ffa08d66
Merge branch 'develop' into feature/vuejs 2018-12-16 14:20:35 -08:00
Dane Everitt 7c73f21b30
Fix Node daemon secret not being reset, closes #1390 2018-12-02 13:40:12 -08:00
Dane Everitt d6e9770937
Merge branch 'develop' into patch-1 2018-12-02 13:01:31 -08:00
Oreo Oreoniv adcf0c9fee
Fixed Failed event
Thank you very much Laravel for not pointing out the changes to be made when upgrading from 5.6 to 5.7
2018-11-28 23:24:43 +03:00
zKoz210 2d7e889bcc Fixed StyleCI 2018-11-26 03:28:14 +03:00
zKoz210 0b4b1a3443 Initial update 2018-11-26 03:25:18 +03:00
Matthew Penner 0cbedd9c90 Fix LocationController#store() 2018-11-19 22:04:05 -07:00
Matthew Penner afe128042f
Wait a second, that method doesn't return an array 2018-11-19 21:54:15 -07:00
Dane Everitt 9b654d2c76
Fix bug with client API denying access to routes, closes #1366 2018-11-10 15:27:50 -08:00
Dane Everitt a9fa60a6fb
Respect pagination settings on frontend
closes #1335
2018-11-10 12:38:35 -08:00
mrkrabs 8ef368faa4
Rename app/Http/Controllers/API/Remote/ValidateKeyController.php to app/Http/Controllers/Api/Remote/ValidateKeyController.php 2018-11-07 18:17:27 +02:00
mrkrabs 7c64492557
Rename app/Http/Controllers/API/Remote/SftpController.php to app/Http/Controllers/Api/Remote/SftpController.php 2018-11-07 18:17:08 +02:00
mrkrabs c9e207c15d
Rename app/Http/Controllers/API/Remote/EggRetrievalController.php to app/Http/Controllers/Api/Remote/EggRetrievalController.php 2018-11-07 18:16:50 +02:00
mrkrabs cfbdf07b80
Rename app/Http/Controllers/API/Remote/EggInstallController.php to app/Http/Controllers/Api/Remote/EggInstallController.php 2018-11-07 18:16:28 +02:00
ayan4m1 c5608b1827 rework UI of mail settings page to allow for saving settings before testing 2018-10-13 21:30:47 -04:00
ayan4m1 8b61175c3b add exception message to fail message for mail test 2018-10-13 21:30:47 -04:00
ayan4m1 df9f0be839 styleci tweaks 2018-10-13 21:30:47 -04:00
ayan4m1 670efa3544 styleci tweaks 2018-10-13 21:30:47 -04:00
ayan4m1 ace58dd1df allow test of mail system no matter the type 2018-10-13 21:30:47 -04:00
ayan4m1 1b03ae2efe remove Log::debug() call 2018-10-13 21:30:47 -04:00
ayan4m1 fd3e5fc73e add SMTP mail tester 2018-10-13 21:30:47 -04:00
Dane Everitt b6205463db
Merge branch 'develop' into feature/vuejs 2018-09-23 13:14:46 -07:00
Andrew DeLisa 262ef78fae Allow deletion of multiple allocations at once (#1322) 2018-09-18 21:43:18 -07:00
Dane Everitt 5ca13839cf
Merge branch 'develop' into feature/vue-serverview 2018-09-05 21:34:59 -07:00
Dane Everitt f9542c98e2
Fix tests broken by bad namespaces 2018-09-03 15:59:30 -07:00
Dane Everitt 4d62e4c7b9
Merge branch 'develop' into pr/1128 2018-09-03 15:10:23 -07:00
Dane Everitt 3bb9bf04e5
Pass the updated model through for updating node config, rather than old model, ref #1237 2018-09-03 14:54:50 -07:00
Dane Everitt 5bd3f59455
Fix schedules running twice, closes #1288 2018-09-03 14:32:33 -07:00
Dane Everitt 178b8f8ce6
More logical time handling 2018-08-31 21:00:13 -07:00
Dane Everitt e906ada528
Better handling when deleting a database 2018-08-26 14:01:00 -07:00
Dane Everitt 9be2aa4ca9
Push beginning of DB deletion stuff 2018-08-25 14:43:21 -07:00
Dane Everitt c28e9c1ab7
Add ability to create new database through the UI 2018-08-22 22:29:20 -07:00
Dane Everitt 17796fb1c4
Add basic database listing for server 2018-08-21 21:47:01 -07:00
Dane Everitt e9f8751c4c
More filemanager work, directory browsing working 2018-08-13 22:58:58 -07:00
Dane Everitt 92a9146b61
Improve filemanager, get first level folders listing 2018-08-06 23:14:13 -07:00
Dane Everitt 8db9d9bbee
Very rough go at connecting to socket and rendering console data for server 2018-07-20 23:45:07 -07:00
Dane Everitt f2d2725ca0
Merge branch 'feature/vuejs' into feature/vue-serverview 2018-07-15 16:50:11 -07:00
Dane Everitt 550c622d3b
Obliterate JWT from codebase 2018-07-14 22:48:09 -07:00
Dane Everitt 6336e5191f
Strip out JWT usage and use cookies to track the currently logged in user 2018-07-14 22:42:58 -07:00
Dane Everitt 6c20ea9881
Add tests for changed controllers 2018-07-04 19:20:33 -07:00
Dane Everitt 5010c0c756
Merge branch 'feature/vuejs' into feature/vuejs-account 2018-07-04 18:12:57 -07:00
Dane Everitt af9af78938
Merge branch 'develop' into feature/vuejs 2018-07-04 18:09:07 -07:00
Dane Everitt 8f5bd214a4
[Security] Address 2FA bypass in password reset functionality
Thanks to Trixter#0001 on Discord for this security report.

There was a two-factor authentication bypass present in all previous versions of Pterodactyl that would allow a user to login without providing a token by going through the password reset process. A person would still have to have access to the targeted account's email, but if they did manage to get a password reset link they would be able to reset the account password and then proceede to login without a token being required.

This logic has since been changed to check if 2FA is enabled on an account, and if so they will NOT be logged in when their password is changed. This will force them to continue through the normal login pathway where a token will be needed.

Overall the impact of this issue is minor, but I am still addressing it and disclosing the mechanism behind it.
2018-07-04 11:41:56 -07:00
Dane Everitt 603b8a3094
Merge branch 'feature/vuejs' into feature/vuejs-account 2018-07-02 21:01:04 -07:00
Dane Everitt 48cb01f438
Merge branch 'develop' into feature/vuejs 2018-07-02 21:00:42 -07:00
Stan 1ffb5acfad Send an email when a server is marked as installed (#1213)
Co-authored-by: @stanjg
2018-07-01 14:34:40 -07:00
Dane Everitt 304d947536
Allow creating subuser with no permissions 2018-06-30 18:25:46 -07:00
Dane Everitt 974318ffb4
Logout other sessions when password is changed
closes #1222
2018-06-30 17:50:58 -07:00
Dane Everitt 7711b697ad
Finalize two-factor handling on account. 2018-06-20 23:05:35 -07:00
Dane Everitt 0cc895f2d5
Finalize email/password changing in UI 2018-06-17 16:53:24 -07:00
Dane Everitt fce394f6bd
Change email handling and logout function 2018-06-16 14:30:20 -07:00
Dane Everitt e7faf979a1
Change login handling to automatically redirect a user if their session will need renewal. 2018-06-16 14:05:39 -07:00
Dane Everitt b8b9acd0e6
Get the base email update working through the API.
Still going to need to determine the best course of action to update the token on the client side.
2018-06-11 22:56:57 -07:00
Jakob Schrettenbrunner 05478e3277 Merge branch 'feature/vuejs' into feature/vue-serverview 2018-06-11 21:06:12 +02:00
Dane Everitt 03c83c084a
Revert use of cookies, go back to using a JWT 2018-06-06 22:49:44 -07:00
Dane Everitt e948d81d8a
Base attempt at using vuex to handle logins 2018-06-05 23:00:01 -07:00
Dane Everitt e65854c8c2
Merge branch 'feature/vuejs' into feature/vue-serverview 2018-06-02 23:28:55 -07:00
Dane Everitt 02b29a66ea
Use client API to get resource use for a server 2018-06-02 19:08:53 -07:00
Dane Everitt 969b16a563 Apply fixes from StyleCI
[ci skip] [skip ci]
2018-06-02 21:32:26 +00:00
stanjg 3bb9e5e8a8 Merge branch 'develop' of https://github.com/stanjg/panel into feature/user-specific-language 2018-06-01 15:58:09 +02:00
Dane Everitt e0d67ff857
Merge branch 'feature/vuejs' into feature/vue-serverview 2018-05-31 23:01:24 -07:00
Dane Everitt 6c598f9100
Merge branch 'feature/vuejs' into feature/vuejs-serverlist 2018-05-31 22:59:39 -07:00
Dane Everitt 5f70502f20
Merge branch 'develop' into feature/vuejs 2018-05-31 22:59:16 -07:00
Dane Everitt fd8d7c3571
Merge pull request #1130 from stanjg/feature/stats-page
Added a statistics page to monitor the panel usage
2018-05-31 22:56:58 -07:00
Jakob Schrettenbrunner 11d96c44d1 Merge branch 'feature/vuejs-serverlist' into feature/vue-serverview 2018-05-29 00:04:51 +02:00
Jakob Schrettenbrunner 378a1859cf Merge branch 'feature/vuejs-serverlist' into feature/vue-serverview 2018-05-29 00:04:41 +02:00
Dane Everitt a1444b047e
Fix JWT handling for API access when logging in 2018-05-28 14:59:48 -07:00
Dane Everitt 6e5c365018
Use the client API to load servers on the listing page 2018-05-28 13:23:40 -07:00
Dane Everitt ad69193ac0
Add JWT to login forms 2018-05-28 12:48:42 -07:00
Jakob Schrettenbrunner 89f47c6dbb mocked server page and better navigation and overall layout 2018-05-28 00:37:03 +02:00
Dane Everitt 6f2fcabf22
Add very basic server search and dynamic rendering functionality 2018-05-26 23:17:02 -07:00
Dane Everitt 9d8830a2d7
Get initial mockup of new server list up 2018-05-26 17:20:36 -07:00
stanjg 60e1ffa564
Added a test for the controller and cleaned up the controller 2018-05-27 00:16:13 +02:00
Dane Everitt cf90f56777
Merge branch 'develop' into feature/vuejs-auth 2018-05-26 12:17:14 -07:00
stanjg 7a81c61ad8
Wording changes and fix of major fail last commit 2018-05-26 21:02:47 +02:00
stanjg 86e7085396
Cleaned up the controller and prepared for tests 2018-05-26 20:58:49 +02:00
Dane Everitt 0e1b4661ce
Don't allow access to manage page if server failed installing 2018-05-23 22:23:26 -07:00
Dane Everitt 6967b9ba12
Fix exception thrown due to lack of pre-validation on the model.
closes #1158
2018-05-20 17:11:52 -07:00
Dane Everitt 00df0b66a6
Merge pull request #1148 from pterodactyl/feature/doc-block-improvements
@throws docblock improvements
2018-05-20 16:25:59 -07:00
Dane Everitt 002efddc96
Merge pull request #1146 from pterodactyl/feature/windows-pathinfo-support
Add support for Windows, replace all backslashes with forwardslashes
2018-05-20 16:24:58 -07:00
Lance Pioch 71257c67bf Add more throwing 2018-05-13 12:42:22 -04:00
Lance Pioch 3bc2397795 Library doesn't exist anymore 2018-05-13 12:42:16 -04:00
Lance Pioch f82b419d47 Update php doc blocks 2018-05-13 12:42:11 -04:00
Lance Pioch f42f211e65 Add support for Windows, replace all back slashes with forward slashes 2018-05-13 11:39:44 -04:00
Lance Pioch e2dc0638d9 Fix app/ spelling errors 2018-05-13 11:12:41 -04:00
stanjg 095d85bb60
Added the server as argument, and improved the bug fix 2018-05-06 17:59:11 +02:00
stanjg 06a67bb4bb
Cleaned up some duplicate code 2018-05-05 10:39:20 +02:00
stanjg 28a97fea54
Polished it up 2018-05-04 22:48:43 +02:00
stanjg 93a7d11c28
Made a base 2018-05-04 18:45:37 +02:00
stanjg 17a72d0895
StyleCI fixes 2018-05-04 14:05:42 +02:00
stanjg 9ae25538c3
Made it so users can switch languages themselves 2018-05-04 13:08:41 +02:00
Dane Everitt 4fad244073
Show correct auth error. 2018-04-08 16:16:04 -05:00
Dane Everitt b6e94d9a1e
Code cleanup 2018-04-08 16:00:52 -05:00
Dane Everitt 6d970a4cc3
Finalize login page! 2018-04-08 15:46:32 -05:00
Dane Everitt d63624f607
Working login form with password reset functionality. 2018-04-08 15:18:13 -05:00
Dane Everitt c3e462ab2f
Cleanup login/reset functionality, address security issue with 2FA pathways 2018-04-07 16:17:51 -05:00
Dane Everitt 4f3c668420
Refactor auth controllers to be cleaner and easier to maintain 2018-04-07 12:35:15 -05:00
Dane Everitt 324b989a29
Get a working rough copy of the login page 2018-04-01 17:46:16 -05:00
Dane Everitt 3e2ac981a9
Add API endpoint for getting server resource utilization, closes #900
This endpoint is throttled to 15 requests per minute to avoid destroying the daemon since clients can use it.
2018-03-17 14:01:53 -05:00
Dane Everitt f8e98e9c9e
Add ability to change server name, closes #563 2018-03-10 14:44:21 -06:00
Dane Everitt e55d3c1a9a
Add check on SFTP page to make sure the permission is assigned before showing 2018-03-10 14:26:00 -06:00
Dane Everitt 40c74ae1e7
Add validation to prevent invalid ports, closes #1034 2018-03-10 13:10:40 -06:00
Dane Everitt 4964d294f6
Throw 504 where necessary 2018-03-06 22:17:01 -06:00
Dane Everitt c739f292e4
paginate databases when viewing a host 2018-03-03 17:52:35 -06:00
Dane Everitt c6137db529
Fix build limit management in Admin CP 2018-03-02 19:49:09 -06:00
Dane Everitt bcb69603ad
Add support for user management of databases 2018-03-02 19:03:55 -06:00
Dane Everitt 07893effa3
Add initial go at user created databases for servers, still needs cleaning 2018-03-01 21:27:37 -06:00
Dane Everitt 070239abcf
Fix inability to edit certain environment vars and start line, closes #1008 2018-03-01 19:26:11 -06:00
Dane Everitt 85bdbdce14
Better handling of file download requests 2018-03-01 19:19:19 -06:00
Dane Everitt 838b9a9093
Add support for filesystem caching, closes #993 2018-03-01 18:46:59 -06:00
Dane Everitt 9b93629f45
Add UI for client API keys 2018-02-28 23:30:39 -06:00
Dane Everitt 2017e640b6
Add client API 2018-02-28 22:51:04 -06:00
Dane Everitt 4e12c289ed
Add command sending 2018-02-27 22:09:34 -06:00
Dane Everitt cef3e4ced4
Add base routes for managing servers as a client 2018-02-27 21:28:43 -06:00
Dane Everitt e28973bcae
Move everything around as needed to get things setup for the client API 2018-02-25 15:30:56 -06:00
Dane Everitt fb1b2406b5
Add API endpoint to get a server by external ID 2018-02-24 14:09:09 -06:00
Dane Everitt baeffef24b
Fix bad permissions check on server API route 2018-02-24 12:15:21 -06:00
Dane Everitt 633bba6d6e
Add support for external_id on servers, closes #975 2018-02-24 11:57:12 -06:00
Dane Everitt f655188c58
Fix searching servers 2018-02-24 11:48:24 -06:00
Dane Everitt 4b9f025e98
Fix exception when trying to edit a host, ref #957 2018-02-18 14:10:12 -06:00
Dane Everitt 50809cad36
Fix exception when no 2FA token is entered when enabling or disabling 2018-02-18 13:15:10 -06:00
Dane Everitt 8e1aa15dba
Fixes a bug that would cause non-editable variables on the front-end to throw a validation error 2018-02-15 20:58:51 -06:00
Dane Everitt bf537922a3
Fix username validation and auto-generation, closes #927 2018-02-11 16:39:50 -06:00
Dane Everitt a9c1946319
Add support for finding a user by external ID. 2018-02-07 21:56:11 -06:00
Dane Everitt 2e693067b8
Add search to API endpoints 2018-02-07 21:33:44 -06:00
Dane Everitt dd54c5abb1
Fix user password handling in Admin CP 2018-02-07 21:13:40 -06:00
Dane Everitt 2ec76d283b
Fix bad API behavior 2018-02-04 15:38:38 -06:00
Dane Everitt d4d9eda57a
Add schedule edit support 2018-02-04 13:51:24 -06:00
Dane Everitt ff8b5fc5a3
Fix exception when modifying existing DB host, closes #910 2018-02-04 12:59:14 -06:00
Dane Everitt 48c933fa0f
fix exception when deleting allocations, closes #908 2018-02-03 12:22:10 -06:00
Dane Everitt ffa09d81e2
Pass strings for deletion of user sessions, closes #906 2018-02-03 12:18:18 -06:00
Dane Everitt 7a19019980
Fix suspension/installed handling for servers
closes Pterodactyl/Panel#891
2018-01-30 22:40:21 -06:00
Dane Everitt c599112021
Finalize server management API 2018-01-30 20:36:59 -06:00
Dane Everitt 5ed164e13e
Implement server creation though the API.
Also implements auto-deployment to specific locations and ports.
2018-01-28 17:14:14 -06:00
Dane Everitt 97ee95b4da
Fix some error handling 2018-01-27 13:26:43 -06:00
Dane Everitt 8afced3410
Add nests & eggs
Cleanup middleware handling and parameters on controllers...
2018-01-27 12:38:56 -06:00
Dane Everitt de07b3cc7f
Add server database management support to API. 2018-01-25 22:34:53 -06:00
Dane Everitt 2bd691efad
Add database list endpoint, add more resource name magic 2018-01-25 21:26:06 -06:00
Dane Everitt aca0819bcd
Add server build management to API 2018-01-21 16:02:03 -06:00
Dane Everitt 17f6f3eeb6
Add server details modification endpoint to API. 2018-01-20 16:03:23 -06:00
Dane Everitt 17544481b5
More server management via the API 2018-01-20 13:48:02 -06:00
Dane Everitt 3724559468
Forgotten changes 2018-01-19 21:48:26 -06:00
Dane Everitt a497a3d153
Make server listing and single server view API endpoints work 2018-01-19 21:47:06 -06:00
Dane Everitt 74bdbea6a4
Sneaky files 2018-01-19 20:01:56 -06:00
Dane Everitt 0e7f8cedf0
Reorganize API files 2018-01-19 19:58:57 -06:00
Dane Everitt c3b9738364
Implement application API Keys 2018-01-18 21:36:15 -06:00
Dane Everitt f9fc3f4370
Update interface to begin change to seperate account API keys and application keys
Main difference is permissions, cleaner UI for normal users, and account keys use permissions assigned to servers and subusers while application keys use R/W ACLs stored in the key table.
2018-01-14 13:30:55 -06:00
Dane Everitt 7aa540b895
Remove api permissions table 2018-01-14 12:05:18 -06:00
Dane Everitt e3df0738da
Change the way API keys are stored and validated; clarify API namespacing
Previously, a single key was used to access the API, this has not changed in terms of what the user sees. However, API keys now use an identifier and token internally. The identifier is the first 16 characters of the key, and the token is the remaining 32. The token is stored encrypted at rest in the database and the identifier is used by the API middleware to grab that record and make a timing attack safe comparison.
2018-01-13 16:06:19 -06:00
Dane Everitt 11c4f3f6f2
Finish putting permissions on the API 2018-01-13 14:08:19 -06:00
Dane Everitt d644a53951
Update users & locations to use new permissions format 2018-01-12 20:39:15 -06:00
Dane Everitt a31e5875dc
First round of changes to API to support simpler permissions. 2018-01-11 22:49:46 -06:00
Dane Everitt 0e24c669c4
docblock 2018-01-11 20:08:49 -06:00
Dane Everitt cf21fd5a4b
More API updates, better support for node config edits 2018-01-10 23:19:03 -06:00
Dane Everitt 800e2df6b2
Merge branch 'develop' into feature/api-v1
# Conflicts:
#	app/Contracts/Repository/RepositoryInterface.php
#	app/Repositories/Eloquent/EloquentRepository.php
#	app/Services/Nodes/NodeUpdateService.php
#	tests/Unit/Services/Nodes/NodeUpdateServiceTest.php
2018-01-10 20:55:22 -06:00
Dane Everitt 22511c8e24
Fix allocation behavior, closes #712 2018-01-08 22:12:19 -06:00
Dane Everitt 036bea2b94
Update schedule process to allow toggling/triggering via UI 2018-01-08 21:43:10 -06:00
Dane Everitt adcab5969a
Fix server description nullablility 2018-01-06 12:58:30 -06:00
Dane Everitt d2afc29a80
Refactor how repositories for the daemon work. 2018-01-05 18:27:47 -06:00
Dane Everitt 60eb60013c
Update repository base code to be cleaner and make use of PHP 7 features 2018-01-04 22:49:50 -06:00
Dane Everitt f32cee3ae5
Add location control through API 2018-01-03 21:14:53 -06:00
Dane Everitt 15289b76a7
Finish first round of User/Node API additions
Will still need some tweaking and improvements to allow everything to be used.
2018-01-01 15:11:44 -06:00
Dane Everitt d21f70c04b
Merge branch 'develop' into feature/api-v1 2018-01-01 13:33:06 -06:00
Dane Everitt 0ec5a4e08c
Fix some file management bugs, closes #621 2018-01-01 13:21:10 -06:00
Dane Everitt 8a38a8af4a
Update file manager to account for new API error responses 2017-12-31 10:39:07 -06:00
Dane Everitt 46d7ba7585
Merge branch 'develop' into feature/api-v1 2017-12-31 10:32:28 -06:00
Dane Everitt 5efee34378
close #840 2017-12-30 20:25:04 -06:00
Dane Everitt 54b6fb5ebd
More work on the API utilizing Laravel 5.5 exception rendering
Also corrects API format to maintain JSONAPI spec
2017-12-17 14:57:05 -06:00
Dane Everitt b9d67459b2
Update to Laravel 5.5 (#814) 2017-12-17 13:07:38 -06:00
Dane Everitt f30f4b45ba
Merge branch 'feature/laravel-55-update' into feature/api-v1 2017-12-16 17:19:35 -06:00
Dane Everitt c6cece51ee
Fix the surprisingly few broken tests 2017-12-16 13:35:32 -06:00
Dane Everitt 3c48947f9d
Fix known issues from the upgrade guide 2017-12-16 13:15:09 -06:00
Dane Everitt 4a65dff940
Implement admin user management API routes 2017-12-16 11:31:18 -06:00
Dane Everitt a1da8a3c9d
Merge branch 'develop' into feature/api-v1 2017-12-14 21:12:17 -06:00
Dane Everitt f9df463d32
Implement a better management interface for Settings (#809) 2017-12-14 21:05:26 -06:00
Dane Everitt 285485d7b0
Change how API keys are validated (#771) 2017-12-03 14:29:14 -06:00
Dane Everitt 975597b4d0
Implement changes to administrative user revocation, closes #733 2017-12-03 14:00:47 -06:00
Dane Everitt 20beb2f280 Fix error causing tasks to be un-deletable.
closes #786
2017-12-01 20:10:06 -06:00
Dane Everitt 4c57b5e8ee Merge branch 'develop' into feature/api-v1 2017-11-26 13:22:25 -06:00
Dane Everitt 47f2ca0673 Fix incorrect CPU usage display for limited servers, closes #758 2017-11-26 13:17:40 -06:00
Dane Everitt 0bb44a4972 Fix server startup dropdown for egg being incorrect, fixes #778 2017-11-25 12:27:08 -06:00
Dane Everitt 698c121e11
First round of API additions 2017-11-19 16:30:00 -06:00
Dane Everitt 47e14ccaae
API key UI changes and backend storage of the keys 2017-11-19 13:32:17 -06:00
Dane Everitt 6f52f4a614
Push updates to login page, mostly UI enhancements. 2017-11-18 15:09:58 -06:00
Dane Everitt c7c2c1a45e
Implement changes to 2FA system (#761) 2017-11-18 13:35:33 -05:00
Dane Everitt 26eeffd764
Fix bug preventing changing of the server startup on first save attempt. 2017-11-11 15:07:01 -06:00
Dane Everitt 88562b5cd6
Fix inability to create a server 2017-11-05 15:36:37 -06:00
Dane Everitt ac2abd89e6
Fix bug listing allocations when making a new server.
closes #730
2017-11-05 14:12:53 -06:00
Dane Everitt 22ba6cbecb
Fix subuser URL redirect, closes #723 2017-11-05 12:42:58 -06:00
Dane Everitt 6409fffdad
Implement fix to allow root admins to view all servers.
closes #722
2017-11-05 12:38:39 -06:00
Dane Everitt f8c89f8331
Add support for seeding nests and eggs 2017-11-03 23:07:18 -05:00
Dane Everitt 54228e8124
Fix multiple controller unit test failures 2017-11-03 16:43:28 -05:00
Dane Everitt e0d03513e4
Cleanup frontend controllers and middleware 2017-10-27 21:42:53 -05:00
Dane Everitt fa62a0982e
Refactor startup modification and environment variable services
Better setup, more flexibility, more tests.
2017-10-26 23:49:54 -05:00
Dane Everitt 508ff8cfb3
Finish front-end server modification changes.
Everything is back to the point that it was before this massive code overhaul began. FInal steps before merging this into develop will be some unit tests.
2017-10-25 22:33:28 -05:00
Dane Everitt 058e490ec4 Implement Panel changes to support internal SFTP subsystem on Daemon (#703) 2017-10-25 00:35:25 -04:00
Dane Everitt d50ea18598
Add support for changing the server default allocation as a normal user 2017-10-20 21:32:57 -05:00
Dane Everitt 97dc0519d6
Add database management back to front-end and begin some refactoring
Here we go again boys...
2017-10-18 22:32:19 -05:00
Dane Everitt 5e712f0bb1
Merge branch 'develop' into feature/service-export-import 2017-10-17 21:31:35 -05:00
arioioio b3fdf64435 Redirect to users list on user deletion (#680)
closes #675
2017-10-09 15:13:52 -05:00
Dane Everitt e01d7497f5
Add ability to update an Egg by re-uploading a file. 2017-10-08 23:50:52 -05:00
Dane Everitt aaf96669d4
Misc fixes 2017-10-08 21:36:22 -05:00
Dane Everitt c19c423568
More fixes 2017-10-07 18:08:19 -05:00
Dane Everitt 17642bffe7
More code updates 2017-10-07 17:21:41 -05:00
Dane Everitt cc297eea09
Misc changes 2017-10-07 16:19:07 -05:00
Dane Everitt 6b8464ea3a
Nest & Egg management working through the ACP now. 2017-10-07 16:16:51 -05:00
Dane Everitt df87ea0867
This breaks literally the entire panel. 2017-10-06 23:57:53 -05:00
Dane Everitt 38075c6b9f
Update panel to send correct service option configuration to the daemon. 2017-10-05 23:09:43 -05:00
Dane Everitt 6269a08db7
Finalize service option import/export 2017-10-03 23:31:04 -05:00
Dane Everitt d608c313c3
Complete the service option export configuration 2017-10-03 20:18:27 -05:00
Dane Everitt 0d739257a9
First pass at XML exporter for services 2017-10-03 00:01:04 -05:00
Dane Everitt ae671e6b19
Begin updating UI 2017-10-02 22:51:13 -05:00
Dane Everitt 92ca84a37f
Remove unused controller 2017-10-02 20:03:47 -05:00
Dane Everitt b1834307d5
Update demon routes to use /v1/ 2017-09-30 21:00:24 -05:00
Dane Everitt d5bf8734ef
Add unit tests for RunTaskJob. 2017-09-30 12:40:07 -05:00
Dane Everitt 238ce435d6
interface_exists does not work how I expected, switch to is_subclass_of 2017-09-30 12:06:16 -05:00
Dane Everitt fb8a26f141
Merge branch 'develop' into feature/api-daemon-changes 2017-09-25 21:46:44 -05:00
Dane Everitt e56f4cdd33
Update license headers on files. 2017-09-25 21:43:01 -05:00
Lance Pioch 09d958249d Add togglable 2FA user requirements (#635) 2017-09-25 15:58:16 -10:00
Dane Everitt 7d1c233c49
Final adjustments to Daemon <-> Panel communication change 2017-09-24 21:12:30 -05:00
Dane Everitt 8e2b77dc1e
Final touches to new key-rotation service 2017-09-24 12:34:00 -05:00
Dane Everitt 906a699ee2
Begin implementation of new daemon authentication scheme 2017-09-23 20:45:25 -05:00
Lance Pioch 0f07d6bcf5 The nodes create page will redirect you to the locations page if you don't have a location, the concept is the same here (#640) 2017-09-21 13:05:55 -10:00
Dane Everitt a498bbc7d5
Move location service to match other services 2017-09-15 00:16:03 -05:00
Dane Everitt 7f76684453
More schedule changes 2017-09-13 21:46:43 -05:00
Dane Everitt 2ac90b50f2
Begin refactoring Tasks to be apart of the Scheduler system 2017-09-12 23:45:19 -05:00
Dane Everitt 1873c1e9b9
Who doesn't love a good mystery novel. 🍞
Fix ide helper stubs?
2017-09-11 00:27:43 -05:00
Dane Everitt bab28dbc85
Initial implementation of new task mgmt system 👮 2017-09-09 23:55:21 -05:00
Dane Everitt f157c06d04
Fix PHPCS to order by length not alphabetical 2017-09-04 19:07:00 -05:00
Dane Everitt dc310ffdea
Finish subuser controller 2017-09-04 18:12:13 -05:00
Dane Everitt 7222754580
Merge branch 'develop' of https://github.com/Pterodactyl/Panel into develop 2017-09-04 14:34:40 -05:00
Dane Everitt b12f6f1156
Tests for RemoteRequestController 2017-09-04 14:34:38 -05:00
Dane Everitt 8f14ee989d Apply fixes from StyleCI 2017-09-03 21:41:03 +00:00
Dane Everitt 54554465f2
Add more front-end controllers, language file cleanup 2017-09-03 16:32:52 -05:00
Dane Everitt 4532811fcd
Improved middleware, console page now using new setup 2017-09-02 21:35:33 -05:00
Dane Everitt 37508a370d
Finish up unit tests for base controllers 2017-09-02 18:56:15 -05:00
Dane Everitt 4203cdcb77
Merge branch 'develop' of https://github.com/Pterodactyl/Panel into develop 2017-09-02 00:21:17 -05:00
Dane Everitt 53d1182645
Add unit tests for API key controller 2017-09-02 00:21:15 -05:00
Dane Everitt 30660cfac2 Apply fixes from StyleCI (#609) 2017-08-30 21:14:20 -05:00
Dane Everitt e045ef443a
Should wrap up the base landing page stuff for accounts, next step is server rendering 2017-08-30 21:11:14 -05:00
Dane Everitt 67ac36f5ce
Refactor obscure service names to be clearer 2017-08-27 15:10:51 -05:00
Dane Everitt 1e1eac1b9c Apply fixes from StyleCI (#607) 2017-08-27 14:55:25 -05:00
Dane Everitt f451e4dc47
Begin unit tests for repositories 2017-08-26 19:58:24 -05:00
Dane Everitt 74ea1aa0aa
Push subuser creation service 2017-08-23 21:34:11 -05:00
Dane Everitt 3ee5803416
Massive PHPCS linting 2017-08-21 22:10:48 -05:00
Dane Everitt cdfbc60030
Push pack services and fix for failing tests 2017-08-20 19:23:50 -05:00
Dane Everitt 280633b28a
More service classes for pack management 2017-08-19 20:40:00 -05:00
Dane Everitt 9d3dca87f2
Begin moving packs to new service mechanisms, refactor exceptions for services 2017-08-18 22:19:06 -05:00
Dane Everitt 46cb71e69d Apply fixes from StyleCI (#590) 2017-08-15 23:21:01 -05:00
Dane Everitt 1260a8384a
Initial implementation of controller unit tests. 2017-08-15 23:16:00 -05:00
Dane Everitt 90bbe57148
Move services onto new services system, includes tests 2017-08-15 22:21:47 -05:00
Dane Everitt 6d1b994b7d
More tests 2017-08-13 14:55:09 -05:00
Dane Everitt 340193c013 Apply fixes from StyleCI (#581) 2017-08-12 15:32:34 -05:00
Dane Everitt b8d7d99096
More repository/service/refactor changes 2017-08-12 15:29:01 -05:00