You can assign taxonomies to objects saved in tables other than the posts table. WordPress explicitly supports that (e.g. there is the function _update_generic_term_count
to update the term count for those types of taxonomies) and even use it for links.
I have used it once.
Just register your taxonomies as you would for regular post types ( register_taxonomy( 'your_taxonomy', 'registration', $args );
).
register_taxonomy_for_object_type( 'your_taxonomy', 'registration' )
won’t work though. I need to fill a bug report for that… (well, that’s what I said to myself last time and I forgot… 🙂 )