Might be easiest to display an additional page before the registration page.
Otherwise, one approach, I think, is to add an "extra_field" and then create
a custom validator that verifies the access code.
- auth.settings.extra_fields['auth_user'].append(Field('country'))
allows to extend auth_* tables without need of definiting a custom
auth_* table. Must be placed before auth.define_tables()
http://web2py.com/book/default/chapter/07#Custom-Validators

