go-ceph/rgw/admin
Sebastian Riese 71d9de36f8 rgw/admin: Add the subuser API calls
Signed-off-by: Sebastian Riese <sebastian.riese@cloudandheat.com>
2022-03-17 17:47:25 +00:00
..
bucket_test.go rgw/admin: remove Debug field from API type 2021-07-27 18:21:53 +02:00
bucket.go rgw/admin: Clean up the parameter serialization 2022-03-17 17:47:25 +00:00
caps_test.go format: run gofmt on all files 2021-10-04 18:58:35 +00:00
caps.go rgw/admin: Clean up the parameter serialization 2022-03-17 17:47:25 +00:00
doc.go rgwadmin: add support for RadosGW Admin Ops API 2021-05-31 17:45:31 +02:00
errors_test.go rgwadmin: add support for RadosGW Admin Ops API 2021-05-31 17:45:31 +02:00
errors.go rgw/admin: Add the subuser API calls 2022-03-17 17:47:25 +00:00
link_test.go rgw/admin: add suport for link/unlink bucket (#646) 2022-03-14 20:10:28 +00:00
link.go rgw/admin: Clean up the parameter serialization 2022-03-17 17:47:25 +00:00
quota_test.go rgw/admin: remove Debug field from API type 2021-07-27 18:21:53 +02:00
quota.go rgw/admin: Clean up the parameter serialization 2022-03-17 17:47:25 +00:00
radosgw_test.go rgw admin: import testify suite as tsuite 2021-09-13 15:13:53 +00:00
radosgw.go rgw/admin: remove Debug field from API type 2021-07-27 18:21:53 +02:00
README.md rgw/admin: correct example 2021-12-13 12:57:50 +00:00
subuser.go rgw/admin: Add the subuser API calls 2022-03-17 17:47:25 +00:00
usage_test.go rgw/admin: remove Debug field from API type 2021-07-27 18:21:53 +02:00
usage.go rgw/admin: Clean up the parameter serialization 2022-03-17 17:47:25 +00:00
user_test.go rgw/admin: ability to retrieve user by access key 2021-10-18 14:28:21 +00:00
user.go rgw/admin: Extend the User data to parse Subuser data 2022-03-17 17:47:25 +00:00
utils_test.go rgw/admin: Extend the testing of buildQueryPath 2022-03-17 17:47:25 +00:00
utils.go rgw/admin: Clean up the parameter serialization 2022-03-17 17:47:25 +00:00

Prerequisites

You must create an admin user like so:

radosgw-admin user create --uid admin --display-name "Admin User" --caps "buckets=*;users=*;usage=read;metadata=read;zone=read --access-key=2262XNX11FZRR44XWIRD --secret-key=rmtuS1Uj1bIC08QFYGW18GfSHAbkPqdsuYynNudw

Then use the access_key and secret_key for authentication.

Snippet usage example:

package main

import (
    "github.com/ceph/go-ceph/rgw/admin"
)

func main() {
    // Generate a connection object
    co, err := admin.New("http://192.168.1.1", "2262XNX11FZRR44XWIRD", "rmtuS1Uj1bIC08QFYGW18GfSHAbkPqdsuYynNudw", nil)
    if err != nil {
        panic(err)
    }

    // Get the "admin" user
    user, err := co.GetUser(context.Background(), admin.User{ID: "admin"})
    if err != nil {
        panic(err)
    }

    // Print the user display name
    fmt.Println(user.DisplayName)
}