Come eliminare i segreti dei client OAuth2 senza tempi di inattività

4

Ho un'app che si basa su diversi provider OAuth2 per eseguire il polling dei dati in background per conto degli utenti, come processo in background. Per una questione di best practice, vorrei periodicamente analizzare i miei segreti dei clienti.

I provider OAuth2 che sto usando (e ogni provider OAuth2 che abbia mai visto) mi permetteranno di rigenerare una coppia chiave / segreta, ma non mi permetteranno di creare una seconda coppia. Se re-generi il mio segreto, ci saranno necessariamente tempi di inattività, perché la chiave esistente verrà invalidata e l'app non conoscerà ancora il nuovo segreto.

Non posso aggirarlo creando una nuova relazione OAuth2, perché perderei tutte le mie autorizzazioni per eseguire il polling dei dati per conto dei miei utenti esistenti.

In che modo un'applicazione può eseguire il ciclo di chiavi OAuth2 senza tempi di inattività?

    
posta Mark Tabler 17.06.2016 - 20:46
fonte

1 risposta

2

Questo è qualcosa che mi stavo chiedendo anch'io. Non credo che esista una soluzione al momento, ma credo che i nuovi sistemi possano essere progettati per fare ciò senza tempi di fermo sfruttando Trust Assertions per le chiavi del certificato (TACK) per farlo.

Quando il cliente decide di passare a un nuovo segreto, abbiamo bisogno di un meccanismo per garantire che il server possa fidarsi del nuovo segreto. In altre parole, il nuovo segreto deve essere firmato (cioè un TACK) dal cliente. Questo è ciò che copre la specifica TACK e descrive un ciclo di vita per la creazione di un nuovo TACK, la revoca, ecc. - la cosa più importante riguarda la gestione dei TACK sovrapposti in modo da non avere tempi di fermo.

    
risposta data 18.06.2016 - 09:07
fonte

Leggi altre domande sui tag