Like so many other questions, there is really no concrete answer because it depends on the specifics of the situation. Typically, an employer needs to prove there is a business-related necessity for enacting an English-only policy at work. If the employer can show the court that workers must speak English because the safety of all employees requires everyone to speak one common language, a judge may consider an English-only policy as a business necessity. Another reason this policy may be proven legal is if the employee works in a service industry and the majority of customers only speak English. In this case, an English-only policy constitutes a business necessity because English is required to effectively serve the customers.
Keep in mind that, in most situations, a blanket policy that requires employees to speak English-only all the time may not be found legal in court. This means that, although an employer may be able to require workers to speak English while performing the duties of the job, employees typically cannot be prohibited from speaking their native language while on break.
Since the language we speak is directly related to our nationality, in some cases, an English-only policy at work could constitute discrimination on the basis of national origin. If you feel that an employer has discriminated against you, your best bet is to discuss the situation with an immigration lawyer. A lawyer can help you determine whether or not you have a legitimate claim.