Commit Graph

193 Commits

Author SHA1 Message Date
Derrick Hammer 527334f829
refactor: create generic AdaptMiddleware factory and change ApplyMiddlewares to take interfaces and handle multiple situations 2024-01-22 16:50:03 -05:00
Derrick Hammer 60e917120d
fix: only add slash if path is empty 2024-01-20 10:37:33 -05:00
Derrick Hammer c5b0865977
fix: need to create a custom version of strip prefix that appends a trailing slash for the router 2024-01-20 10:33:18 -05:00
Derrick Hammer 75e7ba00cd
fix: query needs to be manually built and re-encoded 2024-01-20 08:22:51 -05:00
Derrick Hammer 07c36109d8
refactor: move strip prefix to be last 2024-01-20 08:15:27 -05:00
Derrick Hammer 24e841ae97
fix: use new copy of request 2024-01-20 08:13:17 -05:00
Derrick Hammer a1e7cda659
refactor: move injectJwt to be processed after authMiddlewareFunc 2024-01-20 08:12:50 -05:00
Derrick Hammer 9bf10b19bf
refactor: add current request to tusJwtResponseWriter 2024-01-20 08:12:30 -05:00
Derrick Hammer 73fa265939
feat: implement tusJwtResponseWriter WriteHeader 2024-01-20 08:06:50 -05:00
Derrick Hammer a56fa20b6d
refactor: split findAuthToken to parseAuthTokenHeader 2024-01-20 08:03:26 -05:00
Derrick Hammer 1d1c552a0a
refactor: explicitly check the path and only for post 2024-01-20 07:57:09 -05:00
Derrick Hammer a2051acff1
feat: add initial tusJwtResponseWriter bones so we can append the auth_token to tus urls 2024-01-20 07:54:24 -05:00
Derrick Hammer b50c6c9f85
fix: dont put leading slash in prefix 2024-01-20 06:03:07 -05:00
Derrick Hammer 43e52e1ae1
fix: wrong prefix 2024-01-20 06:01:42 -05:00
Derrick Hammer fdef217078
fix: need to add a strip prefix middleware 2024-01-20 05:50:54 -05:00
Derrick Hammer fba3ee4213
fix: we don't need to wrap the tus middleware as NewHandler does it for us 2024-01-20 05:45:13 -05:00
Derrick Hammer 60c7cc5c6c
refactor: fix import cycles 2024-01-19 17:12:26 -05:00
Derrick Hammer 1f7c05434a
refactor: fix import cycles 2024-01-19 17:11:16 -05:00
Derrick Hammer 72219eb59c
feat: add tus endpoints 2024-01-19 17:08:55 -05:00
Derrick Hammer 2e64b56115
refactor: need to use middleware package 2024-01-19 17:08:05 -05:00
Derrick Hammer 5b1838a63b
feat: create tus api builder 2024-01-19 17:06:41 -05:00
Derrick Hammer 26c28db1f2
feat: create ApplyMiddlewares helper 2024-01-19 17:05:18 -05:00
Derrick Hammer e9db71f3b8
refactor: move middleware to its own package to prevent import cycles 2024-01-19 17:04:25 -05:00
Derrick Hammer 2c30477465
refactor: update putfile and gethash call names 2024-01-19 15:52:26 -05:00
Derrick Hammer 8044591697
feat: support auth in header, cookie, and query arg 2024-01-18 20:56:49 -05:00
Derrick Hammer 82f34726d6
debug: add logging 2024-01-18 14:38:15 -05:00
Derrick Hammer 12de0342f5
debug: add logging 2024-01-18 14:28:32 -05:00
Derrick Hammer 8161d36f0e
fix: bad response for existing file 2024-01-18 13:53:04 -05:00
Derrick Hammer 677635aa08
refactor: remove auth from metadata endpoint 2024-01-18 12:18:45 -05:00
Derrick Hammer f957ef5d78
feat: implement /s5/metadata/:cid 2024-01-17 22:19:42 -05:00
Derrick Hammer 510a57162c
feat: implement /s5/debug/storage_locations/:hash 2024-01-17 22:02:36 -05:00
Derrick Hammer 0c88e80a66
feat: implement /s5/blob/:cid 2024-01-17 21:23:33 -05:00
Derrick Hammer dfd03673c9
fix: pin the file if it exists 2024-01-17 17:21:15 -05:00
Derrick Hammer 7fde67aea5
fix: use PinByID and pin after creating the upload 2024-01-17 17:16:12 -05:00
Derrick Hammer b3e1840fac
fix: missing http verb 2024-01-17 16:59:53 -05:00
Derrick Hammer 72c3167e5f
feat: implement POST /s5/registry/subscription 2024-01-17 16:46:13 -05:00
Derrick Hammer acb9604b02
feat: implement POST /s5/registry 2024-01-17 16:20:51 -05:00
Derrick Hammer cde3f90d2d
feat: implement GET /s5/registry 2024-01-17 16:05:31 -05:00
Derrick Hammer 7248570e6b
feat: implement /s5/debug/download_urls/:cid 2024-01-17 15:36:21 -05:00
Derrick Hammer c338a41efd
refactor: use CreateUpload 2024-01-17 14:49:35 -05:00
Derrick Hammer 5fec2f08ff
feat: implement /s5/upload/directory 2024-01-17 14:46:37 -05:00
Derrick Hammer 6a8a3c436a
feat: implement /s5/pin/:cid 2024-01-17 13:13:37 -05:00
Derrick Hammer 66dabf5150
feat: implement /s5/delete/:cid 2024-01-17 13:04:32 -05:00
Derrick Hammer a5cbb4c4fb
fix: tier to use AccountTier struct 2024-01-17 12:38:52 -05:00
Derrick Hammer 1cf2d9880c
feat: add /s5/account/pins.bin endpoint 2024-01-17 12:33:05 -05:00
Derrick Hammer cf422aef0e
feat: add /s5/account/stats endpoint 2024-01-17 12:03:08 -05:00
Derrick Hammer ef872bf344
feat: add /s5/account endpoint 2024-01-17 11:52:54 -05:00
Derrick Hammer 897fec75ad
fix: update use of CIDFromHash 2024-01-17 11:31:48 -05:00
Derrick Hammer 708bd82879
fix: need to seek to reset reader 2024-01-17 11:04:24 -05:00
Derrick Hammer 03f0d80ae5
fix: use AuthUserIDKey in context 2024-01-17 09:09:48 -05:00
Derrick Hammer a41cdbf52c
fix: use the userid context key 2024-01-17 09:05:39 -05:00
Derrick Hammer 1d019d905b
fix: use a type switch 2024-01-17 09:02:13 -05:00
Derrick Hammer af71f68ea9
fix: needs to be uint64 2024-01-17 08:58:58 -05:00
Derrick Hammer bf65e845f3
fix: access sub directly 2024-01-17 08:57:45 -05:00
Derrick Hammer e9aa676d94
fix: use public key, not private 2024-01-17 08:53:10 -05:00
Derrick Hammer 224d7a636d
fix: need to check the decoded public key in hex format 2024-01-17 08:47:58 -05:00
Derrick Hammer e31672aad0
feat: add support for checking the user account and storing in a new context 2024-01-17 08:43:32 -05:00
Derrick Hammer ae0bddf3d1
feat: add jwt auth middleware 2024-01-17 08:16:03 -05:00
Derrick Hammer 1054c52e2f
fix: if email is empty set to a dummy address based on the pubkey 2024-01-16 16:16:37 -05:00
Derrick Hammer dd66f560ef
fix: make email optional 2024-01-16 16:15:50 -05:00
Derrick Hammer d237b42314
fix: if pubkey isnt registered, error 2024-01-16 16:05:28 -05:00
Derrick Hammer f8d0dc6787
fix: delete challenges after they have been used 2024-01-16 15:48:45 -05:00
Derrick Hammer 6c34b383d7
fix: verify the response, not the challenge 2024-01-16 15:37:08 -05:00
Derrick Hammer bc5957f881
fix: need to pass the pubkey without the prefix and encoded to hex 2024-01-16 15:30:00 -05:00
Derrick Hammer accffade40
fix: update error handling 2024-01-16 15:26:57 -05:00
Derrick Hammer f34f009f17
fix: key needs to be 33 bytes 2024-01-16 15:26:36 -05:00
Derrick Hammer e1709a7910
fix: update error handling 2024-01-16 15:23:00 -05:00
Derrick Hammer d74d29e2c5
fix: check that key is 33 bytes and is a ed25519 2024-01-16 15:22:48 -05:00
Derrick Hammer 09216e2817
fix: challenge needs to be base64url encoded 2024-01-16 15:12:05 -05:00
Derrick Hammer db46fcd774
fix: check the challenge substring 2024-01-16 14:45:07 -05:00
Derrick Hammer 1b680dd399
fix: validate without key prefix 2024-01-16 14:43:26 -05:00
Derrick Hammer dd5c6332f3
fix: response must be 65 bytes 2024-01-16 14:32:53 -05:00
Derrick Hammer 5d393c3915
fix: pubkey missing from challenge record 2024-01-16 14:22:16 -05:00
Derrick Hammer 40479d8bb3
fix: wrong account paths 2024-01-16 13:57:33 -05:00
Derrick Hammer ec9026c8b1
feat: implement AccountLogin 2024-01-16 13:56:25 -05:00
Derrick Hammer eee1faab18
feat: implement AccountLoginChallenge 2024-01-16 13:51:03 -05:00
Derrick Hammer 17441ff674
refactor: use setAuthCookie helper 2024-01-16 13:38:10 -05:00
Derrick Hammer 891ca20a72
feat: implement AccountRegister, and switch to using structs for request/response 2024-01-16 13:32:47 -05:00
Derrick Hammer c4f0226d1a
refactor: re-implement s5 routes 2024-01-16 12:20:43 -05:00
Derrick Hammer 4b56de03a3
fix: fix policies 2024-01-15 23:56:44 -05:00
Derrick Hammer 1ccc5d1141
fix: fix policies 2024-01-15 23:46:54 -05:00
Derrick Hammer 46dbfe77bc
fix: update def's 2024-01-15 23:41:13 -05:00
Derrick Hammer e40111a276
fix: sec was not used 2024-01-15 23:15:57 -05:00
Derrick Hammer b2d863d466
Revert "fix: refactor AddPolicy"
This reverts commit 17f16c53af.
2024-01-15 23:08:44 -05:00
Derrick Hammer 17f16c53af
fix: refactor AddPolicy 2024-01-15 23:07:44 -05:00
Derrick Hammer f0b92aa2d6
fix: need to load policies 2024-01-15 22:53:51 -05:00
Derrick Hammer 87ebf5012b
fix: policies need to be added after 2024-01-15 22:53:12 -05:00
Derrick Hammer 05c0aba484
feat: initial casbin support 2024-01-15 22:01:40 -05:00
Derrick Hammer 7ef2f819a8
fix: use GetHttpRouter 2024-01-15 07:56:37 -05:00
Derrick Hammer a54341dd68
fix: subdomain comes before domain 2024-01-11 23:22:56 -05:00
Derrick Hammer a57e575a82
fix: change config path 2024-01-11 23:22:33 -05:00
Derrick Hammer 519426ba7d
feat: bare bones s5 support, and more dynamic loading of subsystems 2024-01-11 23:13:10 -05:00
Derrick Hammer 444de35e31
feat: initial new portal bones 2024-01-11 19:11:53 -05:00