5

Ho un database PostgreSQL a cui accedo da varie posizioni e vorrei aggiungere un'interfaccia con Ruby su Rails 3. Per l'autenticazione devo accedere agli utenti con le stesse credenziali utilizzato per create them directly in the database; c'è un modo per far sì che Rails si connetta al database ogni volta con username/password diversi, in base all'utente corrente? Grazie per eventuali suggerimenti!Utilizzare "utenti del database" per l'autenticazione in Ruby on Rails

+0

Perché vuoi farlo? – ybakos

+1

@ybakos per avere coerenza attraverso il sistema e poiché all'interno del database c'è una complessa configurazione di trigger/funzioni che si basano su ruoli e permessi degli utenti – Takhion

risposta

1

Sì. Utilizzare un'autenticazione personalizzata su devise che effettua una query al database postgresql sottostante.

Vedi:

Custom authentication strategy for devise

avrei certamente aggiungere qualche tipo di filtro per ridurre l'elenco degli utenti che possono eseguire l'autenticazione in questo modo.

+0

Sembra il modo per farlo! Lo verificherò il prima possibile :) – Takhion

+1

Ma come fa una di queste modifiche a quale utente (PostgreSQL) viene utilizzato per stabilire la connessione al database? Certo, puoi autenticare gli utenti usando qualsiasi meccanismo che ti piace ma che non altera l'utente/ruolo collegato alla connessione/sessione del database. –