The only thing that comes to mind is not having any witnesses in case of vampires, but careful screening of incoming migrants lets you single out the vamps with great accuracy anyway, so it is hardly a good reason.
It is possible to make vampire-proof bedrooms, and I have plans to do so in my current fort. They work like this:
#=wall
P,p=pressure plate
H,h=Hatch over gap
#P#
#HP#
#Hh#
#p#
With the bedroom at the top of the picture and the hallway at the bottom. The hatch h is simply hooped up to pressure plate p, and the hatches H are hooked up to pressure plates P via a latch such that the top pressure plate activates the latch and the bottom pressure plate deactivates the latch.
When the dorf enters, all of the hatches allow passage and the dorf can entire fine, activating the latch as they do so. While the latch is activated, the bedroom can still be pathed into and out of, but an attempts to enter it from the outside will cause the passage to close off, so vampires attempting to snack on the sleeping dorf will be unable do.
The latch design that you want to use is not listed on the wiki, and is a such:
║=track
R=north-pointing roller
r=south-pointing roller
P,p=pressure plate
S,s=gear assembly hooked up to power source
|=axle
Underlying track:
║
╚╗
╚╝
With mechanisms:
s
r
pRS
rR
sS
As a base state, s and S are set to OFF, meaning that the power is flowing and the rollers are running, with a minecart being shuttled between the bottom two tiles extremely fast.
When the latch is activated, an ON signal must be sent to s, deactivating the power and the roller. The cart then derails and immediately rerails on the left middle tile, activating the pressure plate, which must be hooked up to the output of the latch. The minecart then shuttles between the top left, middle left and middle right tiles, never letting the pressure place send an OFF signal.
When the latch is deactivated. an ON signal must be sent to the upper S, deactivating the roller on the middle left tile. This causes the cart to return to the bottom two tiles, leaving the pressure plate p to send an OFF signal as it is no longer being activated.