It _ought_ not to need a user table with a user model, I _think_.
However, I could be wrong, or there could be bugs in BL.
I think the easiest thing to do would be to include a User model. That
doesn't mean the user model needs to play any part in authentication --
it's just a local record of a user account in your Blacklight app.
I don't authenticate against a database either. But I do have a user
table in the database with a User active record model. Once a user is
authenticated, I have some 'unique id' for the user from my external
authentication -- I use that external ID to look up a user record in my
local table, and create one if it doesn't exist, and then set that user
record as current_user.
I would recommend that as your best bet. It _ought_ to be possible to
do what you originally described, I _think_ (but could be wrong), but
might take a lot of hacking, and possibly rearchitecting of BL somewhat
if it turns out it wasn't as flexible as we thought.
Your "user" ActiveRecord model _can_ be called something other than
User, if you want to reserve the name "User" for something else. That is
a feature in BL already, and that feature ought to be working, or ought
not to be that hard for us or you to fix if it's buggy.
Jonathan