Here's what I've managed to do. I wrote a script that detects the presence/absence of a specified volume, then kills everything back to login if that volume isn't present. I'm sure it could be modified to look for a file on the drive, or the contents of a file on the drive, as well.
Also the script needs to be set as a loginhook to make it execute on startup. I haven't actually done this yet, because what I really want is to prevent login of a specific user, not anyone -- this will let me login as root if something goes wrong. Anyway, here's the script (thanks to Will Ray for the advice on writing the kill command):
#!/bin/sh
mounted=$(df | grep "/Volumes/insertvolumenamehere");
if [ ! "$mounted" ];
then
kill -9 -1
echo KILLING
else
echo NOT KILLING
exit
fi
To get the above to run as loginhook (root), in Terminal do:
sudo defaults write com.apple.loginwindow LoginHook /path/to/script
[robg adds: I have not tested this script! If you do so, exercise caution as it will more than likely work and boot you back to the login screen.]

