Filtering client side via URL parameters isn't enough. The other way I could think is with many workspaces but that would require manual steps per role and wouldn't really work if you can be in multiple roles. This is a great suggestion.
I dont think there is a good way to handle this. I agree that multi-tenant, RLS and user level data filter.. all these are the most important features to use powerbi embedded. All other use cases are just fancy stuff... No one is going to user a static powerbi report in a SaaS or any other system. We need some good way to handle this.
SQL Server 2016 has row level security with the use of Security Profiles and Session Context. If PowerBI could set a session context variable after connecting with Direct Query then RLS would be properly applied in SQL Server and not PowerBI. We could set the approriate session context variable as part of the Assess Token passed to the embedded report.
Is there something in place to show the data belonging to an user exclusively yet? I would need a solution where embedding a dashboard in an organization it recognized the user and showed its own data