Как реализовать доступ как api только с приложения?
1. при запуске приложение создает ключ, шифрует ключом токен.
2. отправляет на сервер. сохраняем в базе пару ключ токен
3. приложение при запросе по api отправляет на сервет токен.
4. сервер проверят этот токен ключом, который был в паре.
5. и так каждый пользователь устанавливая приложение генерирует секретный ключ для своего устройства и токен.
но что меншает злоумышленнику создать ключ и токен и отправить как обычный пользователь?
какие есть решение для данного вопроса в 2025 году?
Как ограничить доступ как api только с определенного приложения?
Ничего не мешает, можно только постараться увеличить стоимость такой подделки, усложняя и обфусцируя код и скрывая алгоритм шифрования и секретный код.
Есть такая штука как Mutal TLS родом из zero trust arch. Смотри в эту сторону. Если будет лень самостоятельно реализовывать это всё погляди в сторону service mash. Там Mutal TLS из коробки.