In the case where you are able to make a choice about which job you take then yes you definitely should be held to account for that choice. Because it is a moral one.
You had the choice of hacking for the good of people or you could join forces with 'The Man' and make a bunch of money. Maybe the choice isn't so binary, but nonetheless the choice is there. I could understand your statement, 'People need jobs to survive', if your profession was bricklayer, or shelf-stacker, but being a no doubt highly qualified individual in a booming field, as Snowden is, does not generally leave you scrambling to pay the rent and buy your groceries.
Let's break it down into whether it is ethical to reject based on past/present/future employers.
Present employers? Certainly. A number of business schools do this already in the selection process. If you run a gun school and a student comes to you to tell you he is using your training to rob a bank, it would be unethical to teach him. If you are doing training on hacking and you know the student will use this hacking for unethical and illegal wiretapping, it would be unethical to teach him. Again, it is fine to discriminate on what someone is doing.
Future employers? If the candidate is locked into the path - eg, he will use your training to rob a bank, then it would be unethical to teach him. However, as he has not done it yet, and people can change their minds, it would likely be ethical to teach him while also steering him towards the correct path. Ethical or not would depend on three factors: how likely you are to sway him; how much damage he would cause if you could not; and how easy it would be for him to find the training elsewhere, where he would likely not benefit at all from steering.
Past employers? This one is, unfortunately, much harder. If someone is a murderer and has not gone to jail, should you discriminate? If someone is a murderer and has gone to jail but is not repentant, should you discriminate? If he is repentant, should you discriminate? This one is difficult because it crosses the line of 'who one is' and 'what one does'. I'd say everyone will give different answers here based on a huge number of factors. It likely comes down to repentance and acknowledgment on whether what one does was wrong and believable agreement that it will not be done again.
I forgot to put the word legal before employers like I did upthread. I'm sorry if that changes your answer and you feel like you wasted your time, because basically what you wrote about illegal employment makes sense to me. Thanks for the thoughtful response.
Ah, if you put the word 'legal' there, then there is no discussion and nothing to talk about: legal is whatever it says in the law of your country. I'm not in USA, so I have no idea what is or isn't legal, and don't actually care. Legal has nothing to do with ethics and whether something is right or wrong, and doing something that is ethical but illegal is always preferred over something that is legal but unethical. It would always be an ethical imperative to attempt to change an unethical law as well.
Of coarse, sometimes we put our own safety above ethics, and people have differing opinions on whether that is right or not. There is no easy answer there.
I am surprised to hear that laws and ethics have nothing to do with each other. Is it a random chance that murder is illegal and unethical just about everywhere?
Really I was just wondering if you have any examples of legal but unethical employers that you believe it's okay for a university to cite to discriminate against an applicant, in your home country. Perhaps the military?