Commit graph

902 commits

Author SHA1 Message Date
Leonard Lyubich
08a33ff2d9 [#539] authmate: Add context to the container creation failure
Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
2022-06-17 08:28:59 +03:00
Leonard Lyubich
f0749fd23e [#537] Upgrade NeoFS SDK Go with changed netmap package
`PlacementPolicy` type now provides methods to work with QL-encoded
policies. System network parameters can be read using dedicated method
without iterating. Applications can work with `PlacementPolicy`
variables directly so there is no need to use pointers.

Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
2022-06-17 08:28:59 +03:00
Angira Kekteeva
cfe7591cf7 [#523] Add putObjectACL notification
Signed-off-by: Angira Kekteeva <kira@nspcc.ru>
2022-06-17 01:43:46 +04:00
Angira Kekteeva
dd0d21b690 [#523] Fix typo
Signed-off-by: Angira Kekteeva <kira@nspcc.ru>
2022-06-17 01:43:46 +04:00
Angira Kekteeva
bd5fd041b7 [#523] Add object tagging notifications
Signed-off-by: Angira Kekteeva <kira@nspcc.ru>
2022-06-17 01:43:46 +04:00
Denis Kirillov
809c12a571 [#529] Update doc
Signed-off-by: Denis Kirillov <denis@nspcc.ru>
2022-06-16 17:17:45 +03:00
Denis Kirillov
d521af2065 [#529] Add presign URLs support
Signed-off-by: Denis Kirillov <denis@nspcc.ru>
2022-06-16 17:17:45 +03:00
Alex Vanin
83967312e0 [#471] Tidy Makefile
- Remove help target. Help target will always ignore variable
  targets, it is confusing.
- Remove goimports from format target. Gofmt is enough.
- Add linter image version variable.

Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2022-06-16 11:12:42 +03:00
Alex Vanin
f1a2611043 [#471] Add docker/* target in Makefile
Allowed targets:
- docker/all
- docker/bin/neofs-s3-gw
- docker/bin/neofs-authmate
- docker/lint

Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2022-06-16 11:12:42 +03:00
Leonard Lyubich
880ffe7108 [#492] layer: Don't parameterize basic ACL of created containers
`CreateBucket` handler always creates containers with extended public
ACL, so there is no need to configure it in `NeoFS.CreateContainer`.

Make internal `NeoFS` implementation to create containers with
`eacl-public-read-write` basic ACL if corresponding parameter is unset.

Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
2022-06-16 10:46:50 +03:00
Alex Vanin
0e27fea8f2 Revert "[#422] authmate: Fix extended ACL rules reading"
This reverts commit 406e4db30b.

Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2022-06-09 10:30:57 +03:00
Alex Vanin
5485adc477 [#422] Update NeoFS SDK
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2022-06-09 10:30:57 +03:00
Alex Vanin
f438ac5aa2 [#454] Note sections which are not explicitly supported by s3-gw
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2022-06-07 17:37:05 +03:00
Alex Vanin
acbbbb5aa6 [#454] Update compatibility table
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2022-06-07 17:37:05 +03:00
Alex Vanin
51ff59af71 [#454] Support repeating tests in resulting file
One test may be a part of several test
groups. See 'test_multipart_copy_versioned'.
This commit fixes result file parsing.

Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2022-06-07 17:37:05 +03:00
Angira Kekteeva
a8bff13801 [#495] Add acl to copy-object
Signed-off-by: Angira Kekteeva <kira@nspcc.ru>
2022-06-07 17:36:12 +03:00
Denis Kirillov
de7281ac58 [#465] Unify log messages
Signed-off-by: Denis Kirillov <denis@nspcc.ru>
2022-06-07 17:20:26 +03:00
Denis Kirillov
300d4359d8 [#465] Handle cache cast failure
Signed-off-by: Denis Kirillov <denis@nspcc.ru>
2022-06-07 17:20:26 +03:00
Denis Kirillov
f00ca1b6c4 [#438] Drop layer/neofs package
Signed-off-by: Denis Kirillov <denis@nspcc.ru>
2022-06-07 13:59:45 +03:00
Denis Kirillov
40d8972fc6 [#466] Update CodeQL action to v2
Signed-off-by: Denis Kirillov <denis@nspcc.ru>
2022-06-03 17:35:37 +03:00
Alex Vanin
4ed939773b [#487] Use updated SDK method to get bearer issuer
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2022-06-03 11:20:47 +03:00
Angira Kekteeva
dbfac29171 [#487] Fix tests
Signed-off-by: Angira Kekteeva <kira@nspcc.ru>
2022-06-03 10:57:56 +03:00
Angira Kekteeva
e904ed51c7 [#487] Optimize bucketInfo in initObjectPayloadReader
Signed-off-by: Angira Kekteeva <kira@nspcc.ru>
2022-06-03 10:57:56 +03:00
Angira Kekteeva
4767eeed8c [#487] Remove attach of bearer token
When bucket owner is not an issuer of the bearer token

Signed-off-by: Angira Kekteeva <kira@nspcc.ru>
2022-06-03 10:57:56 +03:00
Leonard Lyubich
4f43aad495 [#485] Upgrade SDK with latest bearer package API
Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
2022-06-03 09:38:49 +03:00
Denis Kirillov
ea252421f5 [#484] Add tests
Signed-off-by: Denis Kirillov <denis@nspcc.ru>
2022-06-03 09:35:06 +03:00
Denis Kirillov
f282e877e2 [#484] Handle conditional headers
Signed-off-by: Denis Kirillov <denis@nspcc.ru>
2022-06-03 09:35:06 +03:00
Alex Vanin
ee0f3fb196 [#489] Avoid sensitive data logging
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2022-06-02 19:42:31 +04:00
Alex Vanin
12d9eb62cb [#489] Sanitize log records that may contain user input
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2022-06-02 19:42:31 +04:00
Angira Kekteeva
2ca4dbb190 [#482] authmate: Add wallet public key to output
Signed-off-by: Angira Kekteeva <kira@nspcc.ru>
2022-06-01 09:40:10 +03:00
Denis Kirillov
933ef2bc71 [#441] Remove unused
Signed-off-by: Denis Kirillov <denis@nspcc.ru>
2022-05-31 14:48:58 +03:00
Denis Kirillov
2bca4755f9 [#441] Optimize put objects
Signed-off-by: Denis Kirillov <denis@nspcc.ru>
2022-05-31 14:48:58 +03:00
Denis Kirillov
6cf7dc4010 [#460] Update sdk
Signed-off-by: Denis Kirillov <denis@nspcc.ru>
2022-05-31 11:20:41 +03:00
Denis Kirillov
faa3c65290 [#462] Fix None versioning status
Signed-off-by: Denis Kirillov <denis@nspcc.ru>
2022-05-30 14:44:21 +03:00
Alex Vanin
0e37242b65 [#463] Move DefaultLocationConstraint constant into api
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2022-05-30 14:41:32 +03:00
Alex Vanin
80d4d071d8 [#463] Restrict overriding default location constraint in authmate
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2022-05-30 14:41:32 +03:00
Alex Vanin
89ff89a32b [#463] Define default location constraint
Fixes `test_bucket_get_location` from s3-tests.

Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2022-05-30 14:41:32 +03:00
Leonard Lyubich
087d500c5f [#458] *: Refactor working with NeoFS identities
Pull latest changes from NeoFS SDK Go library. Decrease redundant and
unsafe usage of ID pointers. Use `EncodeToString` method in order to
calculate protocol strings.

Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
2022-05-27 17:22:37 +04:00
Alex Vanin
3f0dbcc995 [#456] Fix binary name in build GitHub Action
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2022-05-25 22:44:48 +04:00
Alex Vanin
80c6122f55 [#450] Do not pass nil error to logAndSendError
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2022-05-25 00:36:42 +04:00
Alex Vanin
385437aace [#441] Don't produce extra object.Head request at regular object upload
Hash can be calculated locally in S3 gateway.
Creation epoch used for versioning and will be
fetched during get and list requests. To avoid
conflicts, put method do not update cache anymore.

Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2022-05-20 10:56:36 +03:00
Alex Vanin
2575462daa [#439] Less cache misses for empty bucket setting
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2022-05-20 10:56:16 +03:00
Alex Vanin
1012a3c6a4 Release v0.21.1
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2022-05-16 15:29:35 +03:00
Alex Vanin
8a2460286f [#435] Sync homomorphic hash disabling with network config
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2022-05-16 15:16:39 +03:00
Angira Kekteeva
01fd43c1b0 [#434] Update go version to 1.17
Signed-off-by: Angira Kekteeva <kira@nspcc.ru>
2022-05-16 10:49:51 +03:00
Kira
2d1512b82b Release 0.21.0
Signed-off-by: Angira Kekteeva <kira@nspcc.ru>
2022-05-13 12:38:14 +03:00
Angira Kekteeva
7d69f9f74b [#432] Add get-object-attributes
Signed-off-by: Angira Kekteeva <kira@nspcc.ru>
2022-05-13 11:42:43 +03:00
Alex Vanin
b778c2e072 [#431] Fix ETag value
ETag is a string with SHA256 of NeoFS object payload.
Hash is taken from object header by neofs-sdk-go getter.
Checksum type in neofs-sdk-go has changes `String()`
output from `<hash>` to `SHA256:<hash>` in latest update.

S3 gateway should not be relied on unstable string format
implementations and use raw value.

Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2022-05-12 21:19:59 +04:00
Alex Vanin
1c33f06bfe [#428] Update SDK
Includes:
- container removal fix
- new session token structure: authmate does not
  parse session context anymore, instead it is
  application defined flexible structure with
  container ID encoded in human-readable format

Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2022-05-06 14:47:06 +04:00
Alex Vanin
9d3e6f75be [#391] Remove unused notification controller from app state
Now controller is a part of handler.

Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2022-05-06 11:03:20 +03:00