Remove `UNSPECIFIED` value from `SignatureScheme` enum. Make
`ECDSA_SHA512` to be default signature scheme (zero value).
Define `SignatureRFC6979` type for RFC-6979 signatures. Use it in
`Container` service.
Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
Container can be created within a session. The presence of a session token
in the GET response body allows you to reflect this fact.
Add `session_token` field of `session.SessionToken` type to
`container.GetResponse.Body` message.
Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
Extended ACL can be set within a session. The presence of a session token in
the GET response body allows you to reflect this fact.
Add `session_token` field of `session.SessionToken` type to
`container.GetExtendedACLResponse.Body` message.
Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
To simplify adding more transport level protocols to neofs-api-go in future, we
need to separate currently default gRPC.
Signed-off-by: Stanislav Bogatyrev <stanislav@nspcc.ru>
- Changed package names adding version
- Added documentation descriptions (sometimes useless) for all fields
- Changed enum format
- Made SessionToken and BearerToken field names more clear
Signed-off-by: Stanislav Bogatyrev <stanislav@nspcc.ru>
There is a need to remove gogoproto usage from NeoFS API since this plugin
is not cross-language. This commit removes usage from container package.
Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
Change the type of all fields for identifier of the container owner to
refs.OwnerID. This will allow you to follow a single format and not duplicate
its description.
Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
Change the type of all fields for the container identifier to refs.ContainerID.
This will allow to follow a single format and not duplicate its description.
Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
Neofs-node doesn't use these headers in any way. They are
obsolete since container API provides proxy between client
and morph chain.
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
With explicit signature field, that contains signature of
stable-marshalled container message, there is no need to have
separate fields of the container in request.
Public key will be stored in neofs.id smart-contract for later
signature verifications.
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
With EACLTable in requests and container id in EACLTable there
is no need in extra messages such as ExtendedACLKey and
ExtendedACLValue.
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
With new ACL conception, access control lists in NeoFS
defined as a required basic ACL and optional extended ACL.
Basic ACL must be set up in container structure. It is a bit
mask stored in 32-bit unsigned integer.
Seven nibbles represent seven object operations: get, put,
head, search, delete, range, range-hash.
Every nibble defines access rules for three targets: user,
owner, others and has permission bit for bearer token.
There is a permission bit for extended ACL and three unused
bits.