All soldiers, when on duty, are bound by the Military Code (UCMJ) as opposed to the Civilian Code (USC). Military code takes precedence over civilian code, when there is a conflict.
So, for example, while on military duty, if you break the speed limits on an Interstate, the state trooper cannot give you a ticket based on the civilian law (but can report you to the military authorities)
INS cannot prosecute you for breaking their laws or deny your application, if your code of conduct was true to the Military Code. So if the Military code says, you should carry ONLY the military ID when on duty, and the civilian code says, carry your GC with you all the time, do what the military code says.
Interestingly, it is the Military Officers in INS Nebraska who take care of your N-426 and N-400 and forward that to regular INS officers for approval.
Basically, Military Code takes precedence, for people in the Military.