scality / cloudserver

Zenko CloudServer, an open-source Node.js implementation of the Amazon S3 protocol on the front-end and backend storage capabilities to multiple clouds, including Azure and Google.
https://www.zenko.io/cloudserver
Apache License 2.0
1.68k stars 236 forks source link

Fixup on deleteObject #5626

Closed benzekrimaha closed 1 month ago

benzekrimaha commented 1 month ago

Introduced by https://github.com/scality/cloudserver/pull/5580 we now do send a requestContext with no specific resource instead of "null", which results in a policy evaluation error. As we get an implicit deny for the requestType "objectDelete", causing the processed result to be false , thus sending an empty array of objects to vault , resulting in a deny even when the policy allows the action on specific objects.

Linked Issue : https://scality.atlassian.net/browse/CLDSRV-555

bert-e commented 1 month ago

Hello benzekrimaha,

My role is to assist you with the merge of this pull request. Please type @bert-e help to get information on this process, or consult the user documentation.

Available options name | description | privileged | authored ------ | ------------ | ------------ |---------- `/after_pull_request` | Wait for the given pull request id to be merged before continuing with the current one. | | `/bypass_author_approval` | Bypass the pull request author's approval | :star: | `/bypass_build_status` | Bypass the build and test status | :star: | `/bypass_commit_size` | Bypass the check on the size of the changeset ```TBA``` | :star: | `/bypass_incompatible_branch` | Bypass the check on the source branch prefix | :star: | `/bypass_jira_check` | Bypass the Jira issue check | :star: | `/bypass_peer_approval` | Bypass the pull request peers' approval | :star: | `/bypass_leader_approval` | Bypass the pull request leaders' approval | :star: | `/approve` | Instruct Bert-E that the author has approved the pull request. | | :writing_hand: `/create_pull_requests` | Allow the creation of integration pull requests. | | `/create_integration_branches` | Allow the creation of integration branches. | | `/no_octopus` | Prevent Wall-E from doing any octopus merge and use multiple consecutive merge instead | | `/unanimity` | Change review acceptance criteria from `one reviewer at least` to `all reviewers` | | `/wait` | Instruct Bert-E not to run until further notice. | |
Available commands name | description | privileged ------ | ------------ | ------------ `/help` | Print Bert-E's manual in the pull request. | `/status` | Print Bert-E's current status in the pull request ```TBA``` | `/clear` | Remove all comments from Bert-E from the history ```TBA``` | `/retry` | Re-start a fresh build ```TBA``` | `/build` | Re-start a fresh build ```TBA``` | `/force_reset` | Delete integration branches & pull requests, and restart merge process from the beginning. | `/reset` | Try to remove integration branches unless there are commits on them which do not appear on the source branch. |

Status report is not available.

bert-e commented 1 month ago

Waiting for approval

The following approvals are needed before I can proceed with the merge:

benzekrimaha commented 1 month ago

@anurag4DSB 7.x branches are not concerned by this fixup as the https://github.com/scality/cloudserver/pull/5580 was merged in 8.8 only

williamlardier commented 1 month ago

@benzekrimaha we can indeed backport this fix and have it in 7.x branches, if we also pass the implicit flag in there, as we might end up with the same problem if we implement quotas with scuba at some point, even if the bug is not (yet) in 7.x

benzekrimaha commented 1 month ago

PR will be merged starting 7.10

bert-e commented 1 month ago

Request integration branches

Waiting for integration branch creation to be requested by the user.

To request integration branches, please comment on this pull request with the following command:

/create_integration_branches

Alternatively, the /approve and /create_pull_requests commands will automatically create the integration branches.

benzekrimaha commented 1 month ago

/create_integration_branches

bert-e commented 1 month ago

Integration data created

I have created the integration data for the additional destination branches.

The following branches will NOT be impacted:

You can set option create_pull_requests if you need me to create integration pull requests in addition to integration branches, with:

@bert-e create_pull_requests

The following options are set: create_integration_branches

bert-e commented 1 month ago

Waiting for approval

The following approvals are needed before I can proceed with the merge:

The following options are set: create_integration_branches

benzekrimaha commented 1 month ago

@bert-e create_pull_requests

bert-e commented 1 month ago

Integration data created

I have created the integration data for the additional destination branches.

The following branches will NOT be impacted:

Follow integration pull requests if you would like to be notified of build statuses by email.

The following options are set: create_pull_requests, create_integration_branches

bert-e commented 1 month ago

Waiting for approval

The following approvals are needed before I can proceed with the merge:

The following options are set: create_pull_requests, create_integration_branches

benzekrimaha commented 1 month ago

@bert-e reset

bert-e commented 1 month ago

Reset complete

I have successfully deleted this pull request's integration branches.

The following options are set: create_pull_requests, create_integration_branches

benzekrimaha commented 1 month ago

/create_integration_branches

bert-e commented 1 month ago

Integration data created

I have created the integration data for the additional destination branches.

The following branches will NOT be impacted:

Follow integration pull requests if you would like to be notified of build statuses by email.

The following options are set: create_pull_requests, create_integration_branches

bert-e commented 1 month ago

Waiting for approval

The following approvals are needed before I can proceed with the merge:

The following options are set: create_pull_requests, create_integration_branches

benzekrimaha commented 1 month ago

/approve

bert-e commented 1 month ago

I have successfully merged the changeset of this pull request into targetted development branches:

The following branches have NOT changed:

Please check the status of the associated issue CLDSRV-555.

Goodbye benzekrimaha.

The following options are set: approve, create_pull_requests, create_integration_branches