If I could throw something in to follow up what he said, there are three people involved. I personally have seen workers use work permits to just come over here and go elsewhere. I've seen employers bring workers over here under horrible conditions and not honour their end of the contract, and I've seen third party recruiters muddy the communication between the worker and employer. The worker shows up and says, “I'm making $16 an hour”, and the employer says, “No, I said $10 an hour.” The worker asks where his car is and is told he doesn't get a car, and this sort of thing.
There are three people involved. At times, one of the members will be the guilty party, at times two. You will find companies that work with certain recruitment agencies in quite a poor fashion.