2013-06-17 16 views
6

Sto implementando il server del provider OAuth 2.0 utilizzando il framework Apache Oltu, cercando un'idea su come generare il token di accesso e i token segreti in java. Si prega di avvisare.OAuth 2.0 Generazione di token e token segreti

+0

Segui la documentazione di Oatuh, google e fai da te! –

risposta

14

OAuth 2.0 specification non dice nulla su come generare token e token segreto. Quindi spetta a te se usi dei dati esistenti/di ancoraggio per generare token o se vuoi usare una sequenza casuale per generare token. L'unica differenza è che se si utilizzano dati presumibilmente noti (ad esempio dati utente, come nome utente, data di creazione, ecc.) È possibile ripristinare i token ogni volta che ne avete bisogno. Se si utilizza una sequenza casuale di dati, non è possibile ripristinare i token una volta persi.

In altre parole, RFC non limita il processo di generazione.

Probabilmente utilizzerei la concatenazione di stringhe dei dati Dettagli utente più alcuni dati casuali, quindi eseguirò la codifica Base64.

String keySource = username + creationDate + random; 
byte [] tokenByte = new Base64(true).encodeBase64(keySource.getBytes()); 
String token = new String(tokenByte); 
+1

grazie per il suggerimento, il mio requisito è quello di avere un token autonomo contenente informazioni come id client, id app ecc. E avere un token segreto che può essere usato per decifrare il token emesso e ottenere le informazioni nel token. suggeriscimi un modo per farlo. – willsteel

+1

Quindi è possibile creare il token che è id client, id app, ecc. Generare token segreto e memorizzarlo nel DB. E utilizzare l'algoritmo DES per crittografare/decifrare il token emesso con il token segreto. Questo è l'esempio su come usare DES is java http://java-espresso.blogspot.com/2011/09/des-algorithm-code-in-java.html – Sqeezer

+0

Grazie, è esattamente quello che stavo cercando, posso suggerisci alcuni degli altri algoritmi che sono più sicuri di DES e possono essere utilizzati per il mio requirment? – willsteel

Problemi correlati