Se me ocurre que puedes crear una nueva excepción y validar que ese usuario no este mas de una vez en la tabla MON$ATTACHMENTS, por medio de un "DataBase Trigger"... para saber como crear y utilizar un "DataBase Trigger", puedes basarte en la explicación que mostré hace algún tiempo en
http://jhonny.clubdelphi.com/2008/09...gers-firebird/
Espero te sirva

.