It looks like there is a change in behavior here (and below as well). is_user_in_course_group_role would not return true if only is_staff was True (see last arg). But has_access will. This makes global staff appear as instructors in every course (when course staff viewed in Studio).