I agree with you, having been an infantryman and an MP I've gotten to see a lot of on-base stupidity. However, I do believe that officers at O-3 rank and NCO's at E-6 rank or higher should be allowed to carry firearms. Yes, they're not perfect beings either, but I would feel safer on a Saturday night around a staff-sergeant with a pistol than a young private with a pistol.
Yes, it looks like age discrimination, I know. You need to live in a barracks or enlisted family quarters to understand.