VRTK object snapzone but allow rotate and still be grabbed

Is there a way to snap an object to a snap zone but still allow the user to rotate it via the hand rotation. and If the user moves the hand away without releasing grab, the object goes back to the user? This is to simulate a tool interactive with an object in a scene.