GameSpy wasn't an authentication service. It was a way to search for servers for games because the in game search usually sucked. When you launched the game from GameSpy it would simply send a command line argument with the IP address when calling the executable. Well that's how it worked initially.
Unreal Tournament 3 was released nearly 10 years after GameSpy became a thing. The name made a lot of sense for the original purpose of the product, and it did amazing things for multiplayer games back in the 90s and early 00s.