APE: Allow clients to set chain id #803
Labels
No labels
P0
P1
P2
P3
badger
frostfs-adm
frostfs-cli
frostfs-ir
frostfs-lens
frostfs-node
good first issue
triage
Infrastructure
blocked
bug
config
discussion
documentation
duplicate
enhancement
go
help wanted
internal
invalid
kludge
observability
perfomance
question
refactoring
wontfix
No project
No assignees
3 participants
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference: TrueCloudLab/frostfs-node#803
Loading…
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
The PR #770 has introduced the control api to set chain rules. But it's not allowed to set chain id explicitly (now it's being generated in node).
In some cases this isn't convenient. For example
IAM
operates policy names and it would be nice to form chain ID deterministically. Current approach (generating id in node) makes hard to save mapping between policy name and chain ID in IAM because from node to node the chain ID for the same policy can differ./cc @alexvanin
Control API implementation is an internal detail, nothing should depend on it.
For all other cases we have smartcontract, where arbitrary chain id can be used.
What is your usecase?
I thought we want set policy as fast as possible, so we use control API in s3-gw and node to set policy (that after that be synced with contract in background). Or should we always use contract excplicitly?
Node can be used to set policies for the container (similarly to set-eacl), but this should be done via container service, not control.
Rules set via the control service are for local use only, they are not propagated.
Please, refer to this spec.
You can set a chain ID before a serialization and then set the serialized bytes to the request body.