You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Edit a Role such as Public, the Role must have some permission bound
Open the Permission dropdown, there's a toast saying There was an error loading permissions. At the same time, you will find the UI fails to echo names of some permissions already bound
I've digged into this problem, and found that when Permission dropdown is opened, a request to /api/v1/security/permissions-resources/?q=(page:0,page_size:100) is generated. However, with page_size = 100 set, it can not ensure the bound permissions to be returned in the first page, which causes the UI fails to echo permission names. After all pages are loaded (by scrolling to the bottom of the dropdown), names shows.
Meanwhile, I found that, when I open the Role Edit Form on a role with some permissions bound, a request to /api/v1/security/permissions-resources/?q=(filters:!((col:id,opr:in,value:!(7,15,236,72,73,75,109))),page:0,page_size:100) is generated. However, this api call returns HTTP 400 with body {"message":"Filter column: id not allowed to filter"}. If I understand correctly, this API call is to fetch permission names for bound permissions. Since this call fails, there's no way to map permission id to names unless all permission data was fetched through successive paging requests.
I also found that if I perform a search in the permission dropdown, a request to /api/v1/security/permissions-resources/?q=(filters:!((col:view_menu.name,opr:ct,value:ca)),page:0,page_size:1000) is generated, but also with HTTP 400 and body {"message":"Filter column: view_menu.name not allowed to filter"} or {"message":"Filter column: permission.name not allowed to filter"} returned. This leads to the issue that users can not search the appropriate permission, such as can explore json on Superset.
Based on the aforesaid findings, it should be concluded that the Permission dropdown in role edit form is buggy and not able to use. If one want to review the bound permissions, or to search and add some new permissions, he has to first scroll down to the bottom of the dropdown, to get all pages of permissions detail fetched.
Screenshots/recordings
2026-05-08.21.28.39.mov
Superset version
6.0.0
Python version
Not applicable
Node version
16
Browser
Chrome
Additional context
No response
Checklist
I have searched Superset docs and Slack and didn't find a solution to my problem.
I have searched the GitHub issue tracker and didn't find a similar bug report.
I have checked Superset's logs for errors and if I found a relevant Python stacktrace, I included it here as text in the "additional context" section.
Bug description
Settings->List RolesRolesuch asPublic, the Role must have some permission boundPermissiondropdown, there's a toast sayingThere was an error loading permissions.At the same time, you will find the UI fails to echo names of some permissions already boundI've digged into this problem, and found that when
Permissiondropdown is opened, a request to/api/v1/security/permissions-resources/?q=(page:0,page_size:100)is generated. However, withpage_size = 100set, it can not ensure the bound permissions to be returned in the first page, which causes the UI fails to echo permission names. After all pages are loaded (by scrolling to the bottom of the dropdown), names shows.Meanwhile, I found that, when I open the
Role Edit Formon a role with some permissions bound, a request to/api/v1/security/permissions-resources/?q=(filters:!((col:id,opr:in,value:!(7,15,236,72,73,75,109))),page:0,page_size:100)is generated. However, this api call returns HTTP 400 with body{"message":"Filter column: id not allowed to filter"}. If I understand correctly, this API call is to fetch permission names for bound permissions. Since this call fails, there's no way to map permission id to names unless all permission data was fetched through successive paging requests.I also found that if I perform a search in the permission dropdown, a request to
/api/v1/security/permissions-resources/?q=(filters:!((col:view_menu.name,opr:ct,value:ca)),page:0,page_size:1000)is generated, but also with HTTP 400 and body{"message":"Filter column: view_menu.name not allowed to filter"}or{"message":"Filter column: permission.name not allowed to filter"}returned. This leads to the issue that users can not search the appropriate permission, such ascan explore json on Superset.Based on the aforesaid findings, it should be concluded that the
Permissiondropdown in role edit form is buggy and not able to use. If one want to review the bound permissions, or to search and add some new permissions, he has to first scroll down to the bottom of the dropdown, to get all pages of permissions detail fetched.Screenshots/recordings
2026-05-08.21.28.39.mov
Superset version
6.0.0
Python version
Not applicable
Node version
16
Browser
Chrome
Additional context
No response
Checklist