The bill passed the House Wednesday by a 118-36 vote. The Senate passed the measure earlier this month.
Language in the bill would declare federal gun laws unenforceable. It would also allow concealed weapons to be carried by designated personnel inside schools.
Appointed, "protection officers" would be allowed to carry with a valid permit and registration through the state Department of Public Safety. Officers would also be required to take a training course.
It would also allow firearms less than 16 inches long to be openly carried even in areas that prohibit open-carry firearms.
The bill also addresses privacy concerns; preventing people from publishing identifying information of gun owners and making it a class A misdemeanor for doing so.
In addition, the bill would lower the minimum age to obtain a concealed weapons permit from 21 to 19.
If signed into law by the governor, legal hurdles could stand in the bill's way.
U.S. Attorney General Eric Holder sent a letter to Kansas after similar legislation was passed in the state.