Per impostazione predefinita, il servizio SSO memorizza le sessioni in un’archiviazione key-value distribuita di cluster fornita da consul. Questo garantisce un’ottima tolleranza ai guasti e assicura per progettazione la sicurezza in lettura-scrittura. D’altra parte, sui siti ad alto volume ciò può penalizzare le prestazioni.
Per risolvere questo problema, la soluzione include diversi meccanismi di archiviazione delle sessioni che permettono di conservare le sessioni in un database relazionale esterno o nel servizio REDIS integrato in Notakey Authentication Appliance.
Supponendo che il servizio REDIS sia configurato con VRRP all’indirizzo 10.0.1.98, eseguite i seguenti comandi di configurazione per passare all’archiviazione REDIS:
ntk cfg set :sso.base.\"store.type\" "redis"
ntk cfg set :sso.base.\"store.redis.host\" "10.0.1.98"
Se usate un solo nodo o non usate VRRP, sostituite 10.0.1.98 con redis, che è il
nome interno di questo servizio. Consultate
Configurare il servizio REDIS con VRRP
per maggiori dettagli.
Ricordate che dopo qualsiasi modifica di configurazione dovete riavviare tutte le
istanze del servizio con ntk sso restart. Nota inoltre che attualmente non
esiste alcun modo per migrare da un tipo di archiviazione delle sessioni a un
altro: tutte le sessioni attive verranno quindi invalidate dopo il riavvio del
servizio.
Dopo le modifiche, assicuratevi che le sessioni si stiano popolando in REDIS (eseguite il comando sul nodo in cui si trova il servizio REDIS, ad es. MASTER):
docker exec -it redis redis-cli -n 0
> keys sso.*