In principle, by placing a GNSS-receiver on all extremities of a spacecraft (or aircraft, for that matter), one can determine the orientation of the satellite. Google lists some studies, but have such systems been used in real spacecraft? On the one hand, I'd think cubesats might go for such a low-cost solution, on the other hand, the smaller the spacecraft, the larger the error in attitude determination by using GNSS. The technique is not listed on the Wikipedia page on attitude control. Has this been used in practice at all?
The ISS does it. Source: http://spacestationlive.jsc.nasa.gov/handbooks/adcoHandbook.pdf
How am I currently oriented?
The ISS also uses GPS to determine how the ISS is oriented, or facing, as it orbits the Earth. This orientation, or attitude, can be determined by measuring the difference in time that the GPS signals are received by four antennas. These antennas receive the same GPS signal at slightly different times, with the signal traveling at a constant speed (the speed of light).
To calculate attitude, at least four of the nearly 24 GPS satellites in orbit must be in view of these antennas. The GPS receiver calculates the ISS attitude about once a minute, providing information on where the ISS is pointed at that point in time.
Now, in more detail on that:
The ISS GPS antenna array consists of four antennas in a 3 meter by 1.5 meter rectangle on the S0 element of the ISS main truss. The array center is slightly to the port side (4 meters) of the vehicle centerline, as shown in Figure 10.
GPS alone can not meet the attitude accuracy requirements. The multipath environment on ISS is such that the unfiltered GPS attitude solutions can not meet the 0.5 degree requirement. The unfiltered GPS attitude solutions are used as an input in the ISS’s on board software attitude filter.
The new Soyuz MS does too.
Instead of relying on ground stations for orbital determination and correction, the now included Satellite Navigation System ASN-K (Russian: (АСН-К, Аппаратура Спутниковой Навигации) relying on GLONASS and GPS signals for navigation. It uses four fixed antennas to achieve a positioning accuracy of 5 m (16 ft), with the objective to reduce that number to as little as 3 cm (1.2 in) and an attitude accuracy of 0.5°.