WeBWorK doesn't have a built in mechanism for self-enrolling students. It would be a useful feature but hasn't been urgent enough that anyone added it to the system. There are hooks that would allow it to be added through the Authen and Authz modules. Similar modules which have been added are CAS, Cosign and Compass. LDAP verification and LTI have also been added to these hooks. Adding a native "enroll by email" feature would be a project, not a huge one, but it would take some time to get it right.
The quick fix alternative that comes to mind is to use Moodle or some other LMS (VLE) as a front end. I use Moodle, which has a self-enrollment feature, and it will then automatically log the student into a WeBWorK assignment or gateway quiz. Now that LTI has been added this kind of interoperability is available with Blackboard, D2L, Canvas and so forth. Let the LMS do the email enrollment and then use LTI's single sign method on to call up WeBWorK, enroll the student in the course and give them an assignment.
Does anyone know of a light weight LTI capable app that simply does email registration and enrollment?
Some partial documentation:
with updated information at
Gavin LaRose at U. of Michigan has worked with Cosign and also uses WeBWorK for placement. Pan Luo at UBC has created a shibboleth authentication module
Some others with more direct experience creating new authentication methods may chime in here.