object: Introduce soft ape checks #986
No reviewers
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 milestone
No project
No assignees
6 participants
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference: TrueCloudLab/frostfs-node#986
Loading…
Reference in a new issue
No description provided.
Delete branch "aarifullin/frostfs-node:fix/strict_ape_checks"
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 also introduce a new actionObject.*
andContainer.*
to make possible to define a rule for all methodsd1a1d98f95
tof697ca511b
dkirillov referenced this pull request from TrueCloudLab/frostfs-s3-gw2024-02-14 11:39:37 +00:00
We have to also add the similar check for tree service. See
f697ca511b/pkg/services/tree/signature.go (L79-L87)
Looks like needs to reword commit message a bit:
enabled is basic ACL mask is not set --> enabled if basic ACL mask is not set
@ -107,0 +108,4 @@
// Strict APE check denies a request if CheckAPE returns NoRuleFound for it,
// otherwise it allows the request. It is taken for enabled if no bits are set
// within basic ACL mask.
func (r RequestInfo) IsStrictAPECheck() bool {
You are always using NOT operator with result of this function and with field
StrictAPECheck
. How about to replace it withSoftAPECheck
?Replaced to
SoftAPECheck
. Could u check please if I've left mistakes. Also, I fixed commit messagef697ca511b
to6af79d2d6e
object: Introduce strict ape checksto object: Introduce soft ape checks6af79d2d6e
tod4fee9d5b8
Unit tests fail
What other testing was done?
d4fee9d5b8
to259208161e
259208161e
to2943a56b76
@ -79,1 +79,4 @@
basicACL := cnr.Value.BasicACL()
// Basic ACL mask can be unset, if a container operations are performed
// with strict APE checks only.
if basicACL == 0x0 {
@dkirillov
Since, basic acl checks are skipped in tree service if the mask is unset
Fixed unit-tests. The failures occured because no allow policy was set
98ce78be0a
to511a8527d9