I had the same issue those days and I came up with the following workaround (I don't think is the best but at least works!)
You roles should be comma separated in the CSV. Also, I had to make the match between the rids as in D7 the rid where numbers (eg 1,2,4) and in D8 it was strings (eg admin, default_role, etc)
Create a custom module only for the migration and use hook_user_presave
in your module file.
//check if the user has multiple roles comma separated
if( strpos($current_roles[1], ',') !== false )
{
//split the roles
$tmp = explode(', ', $current_roles[1]);
foreach ($tmp as $role){
//add each role separately to the user
$user->addRole($role);
}
//remove the old roles added by the CSV (all user roles comma separated)
$user->removeRole($current_roles[1]);
}
else{
// Default role assigned to all other users - optional
$user->addRole('default_role');
}
Also another way to do that is this but I didn't try it so I don't know if/how it works.