@@ -4125,7 +4125,17 @@ user_limits_list_test(Config) ->
41254125 },
41264126 rabbit_ct_broker_helpers :set_user_limits (Config , 0 , NoVhostUser , maps :get (value , Limits4 )),
41274127
4128- ? assertEqual ([Limits4 ], http_get (Config , " /user-limits/no_vhost_user" , ? OK )).
4128+ ? assertEqual ([Limits4 ], http_get (Config , " /user-limits/no_vhost_user" , ? OK )),
4129+
4130+ % % A management-only user must not be able to enumerate other users' limits.
4131+ % % Reading own limits is allowed; reading another user's limits or the full
4132+ % % list must be refused.
4133+ http_get (Config , " /user-limits" , User1 , User1 , ? NOT_AUTHORISED ),
4134+ http_get (Config , " /user-limits" , User2 , User2 , ? NOT_AUTHORISED ),
4135+ Limits1 = http_get (Config , " /user-limits/" ++ binary_to_list (User1 ), User1 , User1 , ? OK ),
4136+ http_get (Config , " /user-limits/" ++ binary_to_list (User2 ), User1 , User1 , ? NOT_AUTHORISED ),
4137+ Limits2 = http_get (Config , " /user-limits/" ++ binary_to_list (User2 ), User2 , User2 , ? OK ),
4138+ http_get (Config , " /user-limits/" ++ binary_to_list (User1 ), User2 , User2 , ? NOT_AUTHORISED ).
41294139
41304140user_limit_set_test (Config ) ->
41314141 ? assertEqual ([], http_get (Config , " /user-limits" , ? OK )),
0 commit comments