Autenticação no CouchDB

Autenticação tem a ver com a forma de você dizer quem você é para um sistema, informar a ele suas credenciais. O CouchDB suporta 4 tipos de autenticação diferentes:

  • Autenticação por Cookie
  • HTTP Basic Auth
  • Autenticação por Reverse Proxy
  • Autenticação por JWT

Autenticação por Cookie (padrão)

A nativa é a autenticação padrão do CouchDB. No momento em que você instala o CouchDB a autenticação nativa já está funcionando.

Neste tipo de autenticação, o login e senha são guardados dentro do CouchDB.

Autenticação com Proxy Reverso

Se você quer usar um servidor externo de autenticação é preciso utilizar essa forma de autenticação. Se quiser fazer isso e usar SSL, você precisa habilitar SSL diretamente no proxy reverso, e encaminhar os pacotes sem SSL para o CouchDB. Aqui vai uma boa explicação do porquê disso.

Referências

Documentação oficial sobre os tipos de autenticação no CouchDB
https://docs.couchdb.org/en/stable/api/server/authn.html

Proxy Reverso CouchDB
https://docs.couchdb.org/en/stable/best-practices/reverse-proxies.html

Usando SSL com HAProxy
https://serversforhackers.com/c/using-ssl-certificates-with-haproxy

You should also read:

Formatos de Autenticação HTTP/HTTPS

BasicAuth JWT OAuth2 HTTP Signatures OpenID Auth0 Ory Hydra Artigo sobre HTTP Signatures https://medium.com/@technospace/ensuring-message-integrity-with-http-signatures-86f121ac9823 GitHub do Ory Hydra https://github.com/ory/hydra