It would be great to have sophisticated ways to view and understand roles in the UI.
Here's some things I want to see:
What roles have access to what tables? Presently I need to click through all the tables.
What parts of the database are inaccessible via the roles? For example, new fields?
It would also be cool to run some kind of interesting analysis depending on the complex rules you add; for example, there could be some kind of "fuzzing" or "sentinel" data analysis wherein we can see where various bits of data flow, given all the role constraints in the database.
Overall, I think there's a significant amount of work that could be done to make the roles/authentication move visible in terms of (1) the tables themselves, and (2) the data that can be retrieved and (3) some kind of "dynamic" testing that would allow you to analysis data flow in relation to the role configurations.
Basically, the point is there is sophisticated role enforcement in Hasura, but it doesn't seem there's a good way to make that interactively visible in a convenient way. I don't want to build an external tool to do this; because it seems like it would be best built within Hasura itself.
Hope this makes sense! Happy to clarify any points further.
( As discussed very briefly with @sordina and also raised on the Discord )
In the end, after several years (!), I've made some progress on a small part of this here - https://invariant.club/ - if you're interested, do give it a shot and let me know! :)
It would be great to have sophisticated ways to view and understand roles in the UI.
Here's some things I want to see:
It would also be cool to run some kind of interesting analysis depending on the complex rules you add; for example, there could be some kind of "fuzzing" or "sentinel" data analysis wherein we can see where various bits of data flow, given all the role constraints in the database.
Overall, I think there's a significant amount of work that could be done to make the roles/authentication move visible in terms of (1) the tables themselves, and (2) the data that can be retrieved and (3) some kind of "dynamic" testing that would allow you to analysis data flow in relation to the role configurations.
Basically, the point is there is sophisticated role enforcement in Hasura, but it doesn't seem there's a good way to make that interactively visible in a convenient way. I don't want to build an external tool to do this; because it seems like it would be best built within Hasura itself.
Hope this makes sense! Happy to clarify any points further.
( As discussed very briefly with @sordina and also raised on the Discord )
-- Edit: Maybe related and worth reading - https://lobste.rs/s/me5emr/how_why_graphql_will_influence_sourcehut