Object lookup path
When accessing objects, REST APIs come to Ceph Object Gateway with account information, bucket name or key, and object names. The Ceph Object Gateway uses the account information to find out the user ID and for access control. The bucket name and object key are used to address the object in a pool.
- Account information
- The account information has the access key in S3 or the account name in Swift.
The user ID in Ceph Object Gateway is a string, typically the actual username from the user credentials and not a hashed or mapped identifier.
When accessing a user’s data, the user record is loaded from an object
USER_IDin thedefault.rgw.metapool withusers.uidnamespace. - Bucket or container name
- The bucket or container names are represented in the
default.rgw.metapool withrootnamespace. Bucket record is loaded to obtain a marker, which serves as a bucket ID. - Object name or key
- The object is located in the
default.rgw.buckets.datapool. Object name isMARKER_KEY, for exampledefault.7593.4_image.png, where the marker isdefault.7593.4and the key isimage.png. These concatenated names are not parsed and are passed down to RADOS only. Therefore, the choice of the separator is not important and causes no ambiguity. For the same reason, you can use slashes in object names, such as keys.