Ben McClelland
d47cbcb39f
feat: add quiet option to silence request log output
2023-12-23 16:52:56 -08:00
Ben McClelland
ba501e482d
feat: steaming requests for put object and put part
...
This builds on the previous work that sets up the body streaming
for the put object and put part requests. This adds the auth and
checksum readers to postpone the v4auth checks and the content
checksum until the end of the body stream.
This means that the backend with start reading the data from the
body stream before the request is fully validated and signatures
checked. So the backend must check the error returned from the
body reader for the final auth and content checks. The backend
is expected to discard the data upon error.
This should increase performance and reduce memory utilization
to no longer require caching the entire request body in memory
for put object and put part.
2023-12-14 19:19:46 -08:00
jonaustin09
27eb43d089
feat: Closes #290 , implemented request body stream reading for PutObject and UploadPart actions.
2023-12-14 18:27:51 -08:00
Ben McClelland
c6cbd82f8b
fix: Fixes 330, Fixes 334, Fixed copySrcModifSince bug in CopyObject action
...
commit 48d951edfe
Author: jonaustin09 <jonaustin460@gmail.com >
Date: Wed Dec 13 09:06:44 2023 -0500
2023-12-13 15:35:46 -08:00
Jon Austin
e9f01c8cce
S3 proxy ListParts max parts issue ( #338 )
...
* feat: implemented the logic to run integration tests separately
* fix: Resolved tests closer bug
* fix: Fixes #329 , Fixed ListParts max-parts property issue
* fix: removed max-parts max int value check
2023-12-13 10:22:34 -08:00
jonaustin09
48818927bb
feat: Fixes #286 , Created a struct which handles s3 select event streaming and event message construction
2023-12-06 14:02:36 -08:00
Ben McClelland
cd8ad7d482
fix: breaking changes with aws sdk updates
2023-11-28 13:51:32 -08:00
jonaustin09
4f8e4714ee
fix: Fixes #286 , Fixed SelectObjectContent CLI bug, added Content-Length header in response
2023-10-13 13:23:19 -04:00
jonaustin09
920b4945cd
feat: Closes #236 , Added 3 optional fields in iam user account, UserID, GroupID, ProjectID
2023-10-12 13:24:34 -04:00
jonaustin09
52674ab0c5
feat: Closes #282 , created a new integration test group and test cases for posix specific behaviours testing
2023-10-11 08:17:10 -07:00
Ben McClelland
ae0b270c2c
feat: move local iam cache to a more generic cache mechanism
...
The local IAM accounts were being cached in memory for improved
performance, but this can be moved up a layer so that the cache
can benefit any configured IAM service.
This adds options to disable and tune TTL for cache. The balance
for the TTL is that a longer life will send requests to the IAM
service less frequently, but could be out of date with the service
accounts for that duration.
2023-10-09 08:15:56 -07:00
jonaustin09
9d813def54
fix: Fixes 275, Changed the gateway request URL encoding, to accept some more special characters
2023-10-06 15:51:38 -04:00
jonaustin09
856d79d385
fix: Fixes #274 , Fixed putting and getting object metadata case normalization issue
2023-10-05 15:33:03 -04:00
Ben McClelland
ae4e382e61
feat: refactor internal iam service
...
This moves the internal iam service from the posix backend so
that we can start implementing new iam services right in the auth
module.
The internal iam service has same behavior as before, but now
must be enabled with the --iam-dir cli option.
New single user service is the default when no other iam service
is selected. This just runs the gateway in single user mode with
just the root account.
2023-10-02 11:12:18 -07:00
Ben McClelland
4661af11dd
feat: replace access/role context locals with full account info
2023-10-02 10:59:59 -07:00
Jon Austin
9cb357ecc5
CopyObject metadata ( #265 )
...
* fix: Object tag actions cleanup
* fix: Fixes #249 , Changed ListObjects default max-keys from -1 to 1000
* fix: Fixes #250 , Added support to provide a marker not from the objects list and list the objects after the provided marker in ListObjects(V2) actions
* feat: Closes #256 , Addded a check step, to compare object metadatas and allow the copying to itself, if the metadata has been changed
* fix: Simplified range assignment in CopyObject posix function
2023-09-26 18:09:09 -07:00
jonaustin09
099ac39f22
fix: Fixes #259 , Changed delete actions response statuses from 200 to 204
2023-09-23 21:21:47 -07:00
jonaustin09
a67a2e5c8f
fix: Fixes #249 , Changed ListObjects default max-keys from -1 to 1000
2023-09-23 21:03:54 -07:00
jonaustin09
4be5d64c8b
fix: Object tag actions cleanup
2023-09-23 21:00:45 -07:00
jonaustin09
e0c09ad4d9
fix: Fixes #247 , Changed DeleteObjectTagging action successful response status from 200 to 204
2023-09-20 12:07:52 -04:00
jonaustin09
e392ac940a
fix: VerifyACL function clenup: removed unused bucket argument from the function declaration
2023-09-19 16:36:42 -07:00
jonaustin09
a77954a307
fix: Fixes #246 , Added max length check for tag keys and values in PutObjectTagging and PutObject actions
2023-09-19 14:42:30 -04:00
Jon Austin
1874d3c329
fix: Fixes #244 , Added destincation bucket ACL check for CopyObject action ( #253 )
2023-09-18 11:49:37 -07:00
jonaustin09
cf1c44969b
fix: Fixes #239 , Change SigV4 date comparison with UTC
2023-09-13 15:16:50 -04:00
jonaustin09
5ab38e3dab
feat: Closes #232 , Added an option to run admin server in a different network, by specifying admin server address/ip
2023-09-12 16:04:31 -07:00
jonaustin09
6ac69b3198
feat: Closes #217 , Created an admin API and CLI action to list all the buckets and its owners as a table
2023-09-12 08:29:34 -04:00
jonaustin09
35fe6d8dee
fix: some cleanup in posix, router and acl
2023-09-08 12:46:50 -04:00
jonaustin09
23c26d802c
fix: Fixes #216 , Fixed vet warnings, removed the code snippet which copied fiber.Ctx
2023-09-08 11:57:17 -04:00
jonaustin09
8d2e2a4106
fix: Fixes #204 , Change ListBuckets action logic to return all the buckets for admin users and the buckets owned by a user for regular users. Added integration test cases for ListBuckets action
2023-09-07 14:49:47 -04:00
jonaustin09
7620651a49
fix: Merge conflicts resolved with main
2023-09-06 17:45:23 -04:00
jonaustin09
4c7584c99f
feat: Closes #206 , Added an admin api endpoint and a CLI action to change buckets owner
2023-09-06 17:41:47 -04:00
Ben McClelland
df81ead6bc
fix: move auth internal UserAcc to auth.Account
2023-09-05 16:21:21 -07:00
jonaustin09
2bcfa0e01b
Merge branch 'main' of https://github.com/versity/versitygw into feat/issue-205-list-accs
2023-09-05 18:12:23 -04:00
jonaustin09
d80580380d
feat: Closes #205 , Add admin api endpoint and CLI action to list users. Added unit tests for the api endpoint
2023-09-05 18:12:11 -04:00
jonaustin09
cb2f6a87aa
fix: Fixes #207 , Fixes #198 : added lexicographical order by object key and uploadId for ListMultipartUploads response, Added FE support to pass the necessary arguments to BE for ListMultipartUploads
2023-09-01 15:33:58 -04:00
jonaustin09
53cf4f342f
feat: Added more integration test cases for the authentication and md5 checker
2023-08-30 23:21:09 +04:00
jonaustin09
a58ce0c238
feat: Added 8 integration test cases for authentication
2023-08-29 23:46:54 +04:00
jonaustin09
3573a31ae6
fix: Closes #192 , Fixed authentication errors returned, created integration test cases for it
2023-08-25 21:50:21 +04:00
jonaustin09
e8b06a72f9
fix: Fixes #197 , Fixed PutBucketAcl action input validation
2023-08-25 00:40:17 +04:00
jonaustin09
7814979efa
feat: Fixes #181 , Added support to add object with special character keys, disabled URI path escaping in v4 signing, add a middleware to parse the URL and store the decoded version as a new URL, added test cases for adding/getting/listing objects with special characters
2023-08-08 00:41:06 +04:00
jonaustin09
dde13ddc9a
fix: Fixes #183 . Added a validation for max-keys for ListObjects/ListObjectsV2
2023-08-03 20:47:34 +04:00
jonaustin09
009ceee748
feat: Added FE support for SelectObjectContent action
2023-08-02 00:08:28 +04:00
jonaustin09
97847735c8
fix: s3response action responses naming cleanup
2023-07-31 21:41:10 -07:00
Ben McClelland
ac9aa25ff1
Merge pull request #175 from versity/fix/issue-143
...
Issue 143
2023-07-31 21:38:10 -07:00
Jon Austin
091375fa00
Issue 151 ( #174 )
...
* fix: Fixes #151 . Fixed DeleteObjects action bugs: Corrected request body serialization type, added return type
2023-07-31 21:36:33 -07:00
jonaustin09
3f8c218431
fix: Fixes #143 . Fixed action name in bucket creation admin checker response handler
2023-07-31 20:54:16 +04:00
jonaustin09
838a7f9ef9
fix: Fixes #152 . Changed CompleteMultiPartUpload invalid payload error to MalformedXML
2023-07-28 18:19:15 +04:00
Jon Austin
77080328c1
Issue 156 ( #167 )
...
* fix: Fixes #156 , Added bucket name validation on bucket creation
2023-07-27 11:04:50 -07:00
Ben McClelland
884fd029c3
feat: add context to backend calls
...
This adds a context to the backend interface calls so that the backend
can enable request cancellation. This change isn't acutally implementing
any backend handling, but just putting the pieces into place to pass the
context to the backend.
2023-07-26 21:54:12 -07:00
jonaustin09
7fb2a7f9ba
feat: ACL refactoring, moved ace parsing from controllers to middleware
2023-07-26 20:54:50 +04:00