Låter som något du skulle göra med Windows-brandväggen (du kan blockera SQL Server-portarna och tillåta undantag för vissa IP-adresser).
Du kan göra detta med något som en inloggningstrigger som kontrollerade IP-adressen med sys.dm_exec_connections men jag tror att det är ett mycket mindre önskvärt alternativ än att blockera trafiken direkt.
Säkert mycket tuffare att göra på databasnivå.