]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commit
rgw/auth: object ops use new verify_bucket_permission() overload
authorCasey Bodley <cbodley@redhat.com>
Fri, 1 Mar 2024 14:36:31 +0000 (09:36 -0500)
committerCasey Bodley <cbodley@redhat.com>
Wed, 10 Apr 2024 17:09:17 +0000 (13:09 -0400)
commit315ded47868de276de644315767d9ea2fab9c845
treec2cb31af2d369efea1086a0d15faf763e1aa467c
parent071e89b506437da511538c23ebee0d37c5d37745
rgw/auth: object ops use new verify_bucket_permission() overload

several object operations like PutObject, DeleteObject, etc were handling
policy evaluation manually instead of using the helper functions like
verify_user/bucket/object_permission(), so were missing the cross-policy
evaluation rules for account users

these now call the new 'custom arn' overload of verify_bucket_permission()
for equivalent functionality

the eval_identity_or_session_policies() function is no longer exposed by
rgw_common.h to prevent other ops from adding new logic that doesn't
handle cross-account access

Signed-off-by: Casey Bodley <cbodley@redhat.com>
src/rgw/rgw_common.cc
src/rgw/rgw_common.h
src/rgw/rgw_op.cc
src/rgw/rgw_op.h
src/rgw/rgw_rest_swift.cc
src/rgw/rgw_rest_swift.h