Here's a really good article on all auth stuff for CouchDB.
I have a production server with CouchDB configured to use HTTP through localhost, but external requests require HTTPS redirected via stunnel to CouchDB.
On the client, I use PouchDB to support local, replicated db. As part of a handshake to establish communication with CouchDB via HTTPS, the software acquires CouchDB credentials from another server — credentials are never stored on the client side.
pouchdb-authentication is a good plugin, but I found it better to deal with a personal name.
source share