A Provider, Client, and Admin walk into a rails app

I’m working on an app that requires three unique user types:

  1. Provider
  2. Client
  3. Admin

Provider / Admin can likely share the same user model and make use of polymorphic profiles as discussed in this thread. @derekprior 's solution seems to be the best approach unless I’m missing something.

Clients on the other hand are a completely different beast. Clients should authenticate using a phone number, with an optional email field, and have a 4-digit password generated for them. They will also have a profile.

How would I achieve something like this with Clearance? Will I need a user & client model? Any help would be greatly appreciated.