This question already has an answer here:
Two of my clients would like to be able to restrict the contacts that can be assigned to an activity. This is because they handle highly sensitive information and it would be potentially disastrous for them to accidentally select the wrong contact (e.g. a client rather than a case worker). This was asked before here and the question was rated a 5 - the answer from Coleman was to make a code change. I think there's a good case to build some kind of configurable restriction into core. So I'm asking this question again to see how much support there is for a core update, or alternatively to see if anyone has a better idea.