Fix some bugs when testing opensds ansible
[stor4nfv.git] / src / ceph / src / doc / rgw.txt
1 rgw_main: contains the web server interface and checks user access keys.
2 rgw_user: defines the RGWUserBuckets class and contains global functions
3 to get/store user info, get the anon user, and get UIDs from email.
4 rgw_user: defines the RGWUID class with some basic bookkeeping operations
5 rgw_common: houses data types and functions
6 rgw_access: abstract class providing interface for storage mechanisms
7 rgw_acl.h: Many different classes, some decoding XML, some encoding XML, some doing checks for owner and permissions.
8 rgw_fs: rgw_access based on the local fs.
9 rgw_rados:  rgw_access based on an actual RADOS cluster.
10 rgw_admin: Administer the cluster -- create users, look at the state, etc.
11 rgw_op: Define the different operations as objects for easy tracking.
12 rgw_REST: extend the classes in rgw_op for a REST interface
13
14 user IDs are strings, as with S3.
15
16 buckets:
17 ui_email_bucket: hold objects named by email and containing encoded RGWUIDs
18 ui_bucket: holds objects named by user_id and containing encoded RGWUserInfos
19 root_bucket: holds objects corresponding to the other buckets, with ACLs in their attrs.
20
21 Observed schema:
22 buckets:
23 .rgw -- contains: .users -- empty
24                   .users.email -- empty
25                   johnny1 -- bucket name -- empty
26 .users -- contains: anonymous -- empty
27                     bucket for each user id -- contains binary, key, binary, secret key, binary, user name, binary, user email
28 .users.email -- contains bucket for each user email -- contains binary, then user id