Kami memiliki situs web di mana satu - satunya cara untuk masuk dan mengautentikasi diri Anda dengan situs tersebut adalah dengan Facebook (ini bukan pilihan saya). Pertama kali Anda masuk dengan Facebook, akun dibuat secara otomatis untuk Anda.
Kami sekarang ingin membuat aplikasi iPhone untuk situs kami dan juga API publik untuk orang lain menggunakan layanan kami.
Pertanyaan ini tentang bagaimana mengotentikasi dengan situs web kami dari aplikasi / API dan dipecah menjadi 2 bagian:
- Apa cara yang benar untuk menangani otentikasi REST dari API ke situs web yang hanya menggunakan Facebook OAuth sebagai metode otentikasi?
Saya telah membaca dan meneliti banyak tentang metode standar otentikasi untuk REST API. Kami tidak dapat menggunakan metode seperti Basic Auth melalui HTTPS , karena tidak ada kredensial untuk pengguna tersebut. Sesuatu seperti ini tampaknya hanya untuk mengautentikasi aplikasi menggunakan API.
Saat ini, cara terbaik yang dapat saya pikirkan adalah Anda mencapai / mengotorisasi titik akhir di API kami, mengalihkan ke Facebook OAuth, kemudian mengarahkan kembali ke situs dan memberikan 'token' yang dapat digunakan oleh pengguna API untuk mengautentikasi selanjutnya. permintaan.
- Untuk aplikasi resmi yang kami buat, kami tidak perlu menggunakan API publik dengan cara yang sama. Lalu, apa cara terbaik untuk berbicara dengan situs web kami dan mengautentikasi pengguna?
Saya memahami (menurut saya) cara mengautentikasi aplikasi pihak ketiga yang menggunakan API kami, menggunakan kunci API (publik) dan kunci rahasia (pribadi). Namun, ketika harus mengautentikasi pengguna yang menggunakan aplikasi, saya agak bingung tentang bagaimana cara melakukannya ketika satu-satunya cara kami harus mengautentikasi pengguna adalah Facebook.
Saya merasa seperti saya kehilangan sesuatu yang sangat jelas, atau tidak sepenuhnya memahami cara kerja REST API publik, jadi saran dan bantuan apa pun akan sangat kami hargai.