How can I prevent users on Mac from connecting to any WiFi networks and only connect to white-listed networks?
I prefer to do this with MDM supervision as that’s the easiest way.

https://support.apple.com/guide/deployment-education/choose-a-mobile-device-management-solution-asm1c1be3511/web
https://www.fleetsmith.com/
https://app.jamfnow.com/devices

I would start with the free JAMF Now trial since I’ve used it but I hear great things about FleetSmith.
Here is the specific portion of MDM that lets you disable WiFi and push only the approved networks to each managed device.

https://support.apple.com/guide/server/work-with-configuration-profiles-apddda213639/mac