Are these 50 users accessing data related to themselves or their teams or regions etc? If that is the case, you don’t have to create 50 roles, just 1 dynamic user role should suffice. However, for this to work, you need to add a user column to the Dimension table and assign email IDs of the individuals to the rows they have access to.
Also, create a O365 Group, Security Group or Distribution Group in AD and add all 50 users to this group. Assign this O365 Group, Security Group/Distribution Group to the Dataset or Report or Workspace you wish to share. You just have to add names just to this O365/Distribution/Security Groups rather than add 50 users to each of these places.