vitess.io/vitess@v0.16.2/go/vt/vtadmin/http/experimental/whoami.go (about) 1 package experimental 2 3 import ( 4 "context" 5 6 vtadminhttp "vitess.io/vitess/go/vt/vtadmin/http" 7 "vitess.io/vitess/go/vt/vtadmin/rbac" 8 ) 9 10 // WhoAmI is an experimental route for extracting authenticated Actors from 11 // the request, to see who is authenticated on the frontend. 12 func WhoAmI(ctx context.Context, r vtadminhttp.Request, api *vtadminhttp.API) *vtadminhttp.JSONResponse { 13 data := map[string]any{} 14 actor, ok := rbac.FromContext(ctx) 15 data["authenticated"] = ok 16 if ok { 17 data["actor"] = actor 18 } 19 20 return vtadminhttp.NewJSONResponse(data, nil) 21 }