Как ты отличишь импорт из скрипта от импорта из библиотеки?
Можно отреагировать на импорт в момент, когда он происходит - но понять, кто его выполнил, тяжело.
И даже если ты сумеешь через анализ текущего фрейма стека понять, кто вызвал импорт - импортированный модуль будет закэширован, и скрипт потом сможет обратиться к нему через sys.modules. Так что либо запрещать импорт модуля в принципе (например, через аудит хук), либо разрешать его во всём скрипте.