Support credentials update with GSet scheme #135

Closed
opened 2023-06-09 14:43:36 +00:00 by alexvanin · 1 comment

Accessbox is an object that contains bearer tokens signed for specific gateway keys. Address of accessbox object (cid/oid) is used as access key id for S3 credentials. There is a case when storage network is expanded with new S3 gateways. New S3 gateways can't use existing accessboxes because they don't contain suitable bearer tokens. The only way to handle this case is to issue new tokens.

Describe the solution you'd like

Use 2PSet object versioning scheme for accessbox objects.

S3 Gateway:

  1. Searches for the latest version of the object with Filename of access key id in the accessbox container.
  2. If no objects found, use access key id as direct address for accessbox.

S3 Authmate:

  1. Support issuing secrets with 2PSet headers based on existing accessbox

Describe alternatives you've considered

Tree service looks like a suitable place for accessbox versions, but there are some concerns on tree service data restore after the loss. So tree service isn't preferable option here.

Additional context

It takes about 5-6 seconds to find latest version of the accessbox out of 1000 versions with 2PSet. Seems okay for now.

## Is your feature request related to a problem? Please describe. Accessbox is an object that contains bearer tokens signed for specific gateway keys. Address of accessbox object (cid/oid) is used as access key id for S3 credentials. There is a case when storage network is expanded with new S3 gateways. New S3 gateways can't use existing accessboxes because they don't contain suitable bearer tokens. The only way to handle this case is to issue new tokens. ## Describe the solution you'd like Use 2PSet object versioning scheme for accessbox objects. S3 Gateway: 1. Searches for the latest version of the object with `Filename` of access key id in the accessbox container. 2. If no objects found, use access key id as direct address for accessbox. S3 Authmate: 1. Support issuing secrets with 2PSet headers based on existing accessbox ## Describe alternatives you've considered Tree service looks like a suitable place for accessbox versions, but there are some concerns on tree service data restore after the loss. So tree service isn't preferable option here. ## Additional context It takes about 5-6 seconds to find latest version of the accessbox out of 1000 versions with 2PSet. Seems okay for now.
alexvanin added this to the v0.28.0 milestone 2023-06-09 14:43:36 +00:00
alexvanin added the
enhancement
label 2023-06-09 14:43:36 +00:00
dkirillov was assigned by alexvanin 2023-06-09 14:43:36 +00:00
Collaborator

It seems we are about to use GSet (not 2PSet)

It seems we are about to use `GSet` (not `2PSet`)
alexvanin changed title from Support credentials update with 2PSet scheme to Support credentials update with GSet scheme 2023-06-13 06:41:17 +00:00
alexvanin referenced this issue from a commit 2023-06-19 10:15:05 +00:00
Sign in to join this conversation.
No Milestone
No Assignees
2 Participants
Notifications
Due Date
The due date is invalid or out of range. Please use the format 'yyyy-mm-dd'.

No due date set.

Dependencies

No dependencies set.

Reference: TrueCloudLab/frostfs-s3-gw#135
There is no content yet.