Quando si aggiunge l'autenticazione twitter per la mia app Android, andando a Twitter dev, Ero sbalordito a trovare che devo inizializzare Fabric
di Twitter in questo modo:Protezione chiavi di Twitter su Android
import io.fabric.sdk.android.Fabric;
import com.twitter.sdk.android.Twitter;
import com.twitter.sdk.android.core.TwitterAuthConfig;
...
@Override
public void onCreate() {
super.onCreate();
TwitterAuthConfig authConfig =
new TwitterAuthConfig("consumerKey",
"consumerSecret");
Fabric.with(this, new Twitter(authConfig));
}
Sono ufficialmente raccomandare che Inserisco sia la chiave API Key e API Secret nella mia app come testo in chiaro. Anche in questo official sample, le chiavi vengono memorizzate in BuildConfig
.
Sto usando Proguard ma anche allora, non posso garantire che un hacker determinato non sarebbe in grado di sfruttare la mia API Segreto. Le app consolidate come Quora espongono anche queste chiavi?
Qualcuno può pubblicare un esempio per superare questa vulnerabilità o fornire un argomento convincente sul motivo per cui Twitter sta facendo questo?
Al contrario, Google e Facebook mi ha richiesto solo per aggiungere un AppID, e ho dovuto hash miei certificati di firma e collegare gli hash alle rispettive applicazioni. Si tratta di livelli di magnitudine più sicuri di quelli precedenti.
Alex da Fabric qui. Volevo solo espandere il motivo per cui mostriamo questo metodo in app di esempio e in parte della nostra documentazione. Gli esempi illustrano il meccanismo più semplice da integrare con i kit. Ogni squadra e organizzazione ha politiche diverse in materia di sicurezza, quindi lasciamo la decisione su come proteggere e dove archiviare le chiavi e i segreti per ogni sviluppatore. Sicuramente ti sento, e possiamo cercare di fornire documentazione su opzioni più sicure. – Alexizamerican
@Alexizamerican Grazie mille per aver risposto. I tasti twitter che intendo utilizzare hanno l'accesso ** write **. Mi sembra che, non importa quanto sia sicuro, faccio queste stringhe, sto ancora spedendo la mia API di Twitter come segreta agli utenti. Non ho alcun modo garantito per risolvere questo problema di sicurezza, quindi mi chiedevo se ci fosse un altro modo per farlo. Sto bene, essendo un metodo complesso. Idealmente l'app non dovrebbe mai avere alcun accesso al mio segreto. – prakharsingh95
Ciao - Anch'io sono preoccupato per questo. Sei riuscito a trovare un modo più sicuro per archiviare la chiave/coppia segreta? Mi sto anche chiedendo se integrare Twitter sia una buona idea, perché sembra completamente insicuro. – Simon