Report them for workplace discrimination. The 2nd amendment has been affirmed as an individual right just like the first and the rest of them.
I think you to do a little more research - the Bill of Rights in general restricts what the government can do, not what contracts I can enter into. For example, the Constitution protects my right to speak. I have the constitutional right to say whatever I want to about the quality of company's products and those of our major competitor. Were I to go into a public forum and start trashing our products, my company would have the perfect right to terminate my employment.
The OP accepted a contract with the security company. If he violates that policy, he can be terminated.
I'm trying to decide now if I want to carry against their rules for my own protection.
I think this would be a mistake - but not for legal reasons. If you are terminated for violating a company's firearms policy that could have career impacts for a long time.
At one point in my career, I used to interview a lot of candidates for jobs. You really, really don't want a termination of a company's weapons policies on any employment record. Let me repeat that. You really, really don't want a termination of a company's weapons policies on any employment record. No HR department is going to bother to read anything else - no matter how good our resume.
Think about it for one minute - what company in their right mind would hire any employee who was fired for violating the weapons policy at another company? What is the upside for the company of hiring someone with a weapons violation over hiring someone without a weapons violation?
If they hire you anyway what is their liability if you are involved in a firearms incident? I'd guess that if the plaintiffs attorney can show that the company hired you - knowing that you had been terminated from a previous place of employment for violating weapons policy - then the employer's liability is darn near unlimited.
I would
not rely on a future employee being unable to find the record if you are in fact terminated for that reason. More and more data is available online, and companies do stricter and stricter checks.
I'd also add that it seems wrong from an ethical point of view to violate the terms of employment and take a paycheck from them. If you don't want to follow their policies, don't take the job.
Mike