move DisallowedUser to trait