Currently it is done for GC and Citizenship.
Why they want to do the name check again? Do they want to check that after the approval of Green card, a person did something, here in USA and in other countries?
They want to know whether you have committed any crime after getting GC. Since they do not store the Fingerprints in their system, they want your prints again to run the check.