If I put the script with my invisible prim, let's say, the user will still be able to copy this script into his inventory and then put this script into his object. At the same time, the script will not know whether it is in its object or not, if you do not use, for example, the set/get description of the script itself (API not allowed this, as far as I know).