Saat menggunakan protokol OAuth, Anda memerlukan string rahasia yang diperoleh dari layanan yang ingin Anda delegasikan. Jika Anda melakukan ini di aplikasi web, Anda dapat menyimpan rahasia di basis data Anda atau di sistem file, tetapi apa cara terbaik untuk menanganinya di aplikasi seluler (atau dalam hal ini aplikasi desktop)?
Menyimpan string di aplikasi jelas tidak baik, karena seseorang dapat dengan mudah menemukannya dan menyalahgunakannya.
Pendekatan lain adalah menyimpannya di server Anda, dan meminta aplikasi mengambilnya di setiap proses, tidak pernah menyimpannya di telepon. Ini hampir sama buruknya, karena Anda harus memasukkan URL ke dalam aplikasi.
Satu-satunya solusi yang bisa saya hasilkan adalah dengan terlebih dahulu mendapatkan Token Akses seperti biasa (sebaiknya menggunakan tampilan web di dalam aplikasi), dan kemudian merutekan semua komunikasi lebih lanjut melalui server kami, yang akan menambahkan rahasia ke data permintaan dan berkomunikasi dengan penyedia. Kemudian lagi, saya adalah seorang noob keamanan, jadi saya sangat ingin mendengar pendapat beberapa orang yang berpengetahuan tentang ini. Bagi saya, tampaknya tidak sebagian besar aplikasi melakukan hal ini untuk menjamin keamanan (misalnya, Facebook Connect tampaknya berasumsi bahwa Anda memasukkan rahasia ke dalam string tepat di aplikasi Anda).
Hal lain: Saya tidak percaya rahasianya terlibat dalam permintaan Token Akses pada awalnya, jadi itu bisa dilakukan tanpa melibatkan server kami sendiri. Apakah saya benar?