Bagaimana cara memastikan REST API saya hanya menanggapi permintaan yang dihasilkan oleh klien tepercaya, dalam kasus saya aplikasi seluler saya sendiri? Saya ingin mencegah permintaan yang tidak diinginkan datang dari sumber lain. Saya tidak ingin pengguna mengisi kunci serial atau apa pun, itu harus terjadi di belakang layar, pada saat pemasangan, dan tanpa interaksi pengguna apa pun.
Sejauh yang saya tahu, HTTPS hanya untuk memvalidasi server yang Anda ajak berkomunikasi adalah yang dikatakannya. Saya tentu saja akan menggunakan HTTPS untuk mengenkripsi data.
Apakah ada cara untuk menyelesaikan ini?
Pembaruan: Pengguna dapat melakukan tindakan hanya baca, yang tidak mengharuskan pengguna untuk login, tetapi mereka juga dapat melakukan tindakan menulis, yang memang mengharuskan pengguna untuk login (Otentikasi oleh Token Akses). Dalam kedua kasus ini saya ingin API menanggapi permintaan yang datang hanya dari aplikasi seluler tepercaya.
API juga akan digunakan untuk mendaftarkan akun baru melalui aplikasi seluler.
Pembaruan 2: Sepertinya ada beberapa jawaban untuk ini, tapi sejujurnya saya tidak tahu yang mana yang ditandai sebagai jawaban. Ada yang bilang itu bisa dilakukan, ada yang bilang tidak bisa.