revert(urm): Sanitize urm response output (#19242) (#19296)

This reverts commit 6d61c3cd73.
pull/19251/head
George 2020-08-12 15:08:49 +01:00 committed by GitHub
parent a431ca5abc
commit 5c9d6baf5d
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 16 additions and 22 deletions

View File

@ -41,7 +41,7 @@ func (s *UserResourceMappingClient) FindUserResourceMappings(ctx context.Context
urs[k] = &influxdb.UserResourceMapping{
ResourceID: f.ResourceID,
ResourceType: f.ResourceType,
UserID: item.ID,
UserID: item.User.ID,
UserType: item.Role,
}
}
@ -90,7 +90,7 @@ func (s *SpecificURMSvc) FindUserResourceMappings(ctx context.Context, f influxd
urs[k] = &influxdb.UserResourceMapping{
ResourceID: f.ResourceID,
ResourceType: f.ResourceType,
UserID: item.ID,
UserID: item.User.ID,
UserType: item.Role,
}
}

View File

@ -63,7 +63,7 @@ func (h *urmHandler) getURMsByType(w http.ResponseWriter, r *http.Request) {
return
}
users := make([]influxdb.User, 0, len(mappings))
users := make([]*influxdb.User, 0, len(mappings))
for _, m := range mappings {
if m.MappingType == influxdb.OrgMappingType {
continue
@ -74,7 +74,7 @@ func (h *urmHandler) getURMsByType(w http.ResponseWriter, r *http.Request) {
return
}
users = append(users, *user)
users = append(users, user)
}
h.log.Debug("Members/owners retrieved", zap.String("users", fmt.Sprint(users)))
@ -134,7 +134,7 @@ func (h *urmHandler) postURMByType(w http.ResponseWriter, r *http.Request) {
}
h.log.Debug("Member/owner created", zap.String("mapping", fmt.Sprint(mapping)))
h.api.Respond(w, r, http.StatusCreated, newResourceUserResponse(*user, userType))
h.api.Respond(w, r, http.StatusCreated, newResourceUserResponse(user, userType))
}
type postRequest struct {
@ -229,27 +229,15 @@ func (h *urmHandler) decodeDeleteRequest(ctx context.Context, r *http.Request) (
}, nil
}
type URMUserResponse struct {
Links map[string]string `json:"links"`
ID influxdb.ID `json:"id,omitempty"`
Status influxdb.Status `json:"status"`
}
type resourceUserResponse struct {
Role influxdb.UserType `json:"role"`
*URMUserResponse
*UserResponse
}
func newResourceUserResponse(u influxdb.User, userType influxdb.UserType) *resourceUserResponse {
func newResourceUserResponse(u *influxdb.User, userType influxdb.UserType) *resourceUserResponse {
return &resourceUserResponse{
Role: userType,
URMUserResponse: &URMUserResponse{
Links: map[string]string{
"self": fmt.Sprintf("/api/v2/users/%s", u.ID),
},
ID: u.ID,
Status: u.Status,
},
Role: userType,
UserResponse: newUserResponse(u),
}
}
@ -258,7 +246,7 @@ type resourceUsersResponse struct {
Users []*resourceUserResponse `json:"users"`
}
func newResourceUsersResponse(f influxdb.UserResourceMappingFilter, users []influxdb.User) *resourceUsersResponse {
func newResourceUsersResponse(f influxdb.UserResourceMappingFilter, users []*influxdb.User) *resourceUsersResponse {
rs := resourceUsersResponse{
Links: map[string]string{
"self": fmt.Sprintf("/api/v2/%s/%s/%ss", f.ResourceType, f.ResourceID, f.UserType),

View File

@ -87,6 +87,7 @@ func TestUserResourceMappingService_GetMembersHandler(t *testing.T) {
"self": "/api/v2/users/0000000000000001"
},
"id": "0000000000000001",
"name": "user0000000000000001",
"status": "active"
},
{
@ -95,6 +96,7 @@ func TestUserResourceMappingService_GetMembersHandler(t *testing.T) {
"self": "/api/v2/users/0000000000000002"
},
"id": "0000000000000002",
"name": "user0000000000000002",
"status": "active"
}
]
@ -148,6 +150,7 @@ func TestUserResourceMappingService_GetMembersHandler(t *testing.T) {
"self": "/api/v2/users/0000000000000001"
},
"id": "0000000000000001",
"name": "user0000000000000001",
"status": "active"
},
{
@ -156,6 +159,7 @@ func TestUserResourceMappingService_GetMembersHandler(t *testing.T) {
"self": "/api/v2/users/0000000000000002"
},
"id": "0000000000000002",
"name": "user0000000000000002",
"status": "active"
}
]
@ -267,6 +271,7 @@ func TestUserResourceMappingService_PostMembersHandler(t *testing.T) {
"self": "/api/v2/users/0000000000000001"
},
"id": "0000000000000001",
"name": "user0000000000000001",
"status": "active"
}`,
},
@ -304,6 +309,7 @@ func TestUserResourceMappingService_PostMembersHandler(t *testing.T) {
"self": "/api/v2/users/0000000000000002"
},
"id": "0000000000000002",
"name": "user0000000000000002",
"status": "active"
}`,
},