The problem with doing it using ULX groups (or groups in gmod in general) is that to have it restrict players before they join you need to use the PlayerAuthed hook.
That's fine and all.. except this occurs before the player is authed by ULX. The only information you have with this hook is the player's steamid64.
Ohh.. come to think of it.. you could do this pretty easily. Below is pseudocode to get you started...
1. Catch the join event in the PLayerAuthed hook.
2. Convert the 64bit steam id to a normal steam id.
3. Iterate through the ULib.ucl.users table to see if that steam id has an entry.
4. If they do... compare their group (from their entry in the table) against a list of groups you want to allow into your server.
I'm nowhere near my main PC (and won't be for another week) or I'd write this for you, but I can't.
If you can't get this yourself, or no one else takes it on, I'll work it out when I get back. That sounds like a useful plugin to release to the ULX community.