Eugene,
@DarkPerl,
Я вот продолжаю думать... Смотрите, допустим пользователь может читать и писать в базу. Делаем мы это через API
Для доступа к API мы авторизуемся и с каждым запросом передаём токен и данные. После этого API решает, как записать данные. То есть кто-нибудь случайно не запишет\удалит через API (без авторизации)
Теперь допустим, что у нас есть POST метод
https://outserver.com/satabase/ database, который принимает SQL строку с записываемыми данными. Перед выполнением также проверяется авторизация. После сервер выполняет этот SQL (таблицы, джоины и т.д. указываются там же) и возвращает результат
Если читать данные - их можно было бы прочитать и через API (разве что не сразу все). Если удалять - аналогично
В чем опасность использования строк SQL из клиента (т.е. конструирования запроса на стороне клиента) прямо в БД, но с авторизацией на сервере? Адрес базы, кстати, скрывается
Выходит, что с прямым SQL, что через API данные можно и удалить, и прочитать. Вопрос: какая разница?