]> git.apps.os.sepia.ceph.com Git - ceph.git/commit
rgw/role: add rgwrados::role interface for role metadata
authorCasey Bodley <cbodley@redhat.com>
Mon, 4 Dec 2023 21:47:12 +0000 (16:47 -0500)
committerCasey Bodley <cbodley@redhat.com>
Thu, 12 Sep 2024 20:55:01 +0000 (16:55 -0400)
commitbb2ba14dfc4113030f4a8dc17b15f23a39b40b09
tree0be1b708a7ed8c1f967c12d9c9a3e34e0e2f4765
parent4ed934a219069f21f7fd65c7a48170020150d9ec
rgw/role: add rgwrados::role interface for role metadata

move everything from class RadosRole into driver/rados/role.cc and use
RGWSI_SysObj instead of the metadata backend. narrows the RGWRole
interface by handling the name/path objects internally

rgwrados::role::write() adds/remove name and path linkages in case they
change. admin ops don't allow this, but 'metadata put' could upload
arbitrary json that does change them

Signed-off-by: Casey Bodley <cbodley@redhat.com>
15 files changed:
src/rgw/CMakeLists.txt
src/rgw/driver/rados/rgw_sal_rados.cc
src/rgw/driver/rados/rgw_sal_rados.h
src/rgw/driver/rados/rgw_service.cc
src/rgw/driver/rados/role.cc [new file with mode: 0644]
src/rgw/driver/rados/role.h [new file with mode: 0644]
src/rgw/rgw_admin.cc
src/rgw/rgw_rest_iam.h
src/rgw/rgw_rest_role.cc
src/rgw/rgw_rest_role.h
src/rgw/rgw_rest_s3.cc
src/rgw/rgw_rest_sts.cc
src/rgw/rgw_role.cc
src/rgw/rgw_role.h
src/rgw/rgw_sts.cc