Почему C / S не имеет безопасности при подключении к базе данных? - PullRequest
0 голосов
/ 06 декабря 2011

Я разработал приложение, которое отправляет файл на FTP-сервер, а также одновременно обновляет базу данных из клиентского приложения. когда клиент услышал, как эта конфигурация, он не позволил мне настроить из-за безопасности (он так сказал).

Именно поэтому он предположил, что после того, как файл будет помещен на ftp-сервер, в базе данных обновления ftp-сервера появится другое приложение, так как файл является триггером.

В этом случае обновлять базу данных клиентским приложением небезопасно? Кто-нибудь может показать пример для меня?

и .... еще одна вещь ,, использовать файл в качестве триггера не удобно. поэтому, если я использую веб-приложение (это называется веб-сервис), просто укажите URL-адрес на стороне клиента для запуска сервиса, который обновляет базу данных.) вместо файла на FTP-сервере в качестве триггера. как эта конфигурация может также сохранить безопасность ??

Ответы [ 2 ]

2 голосов
/ 06 декабря 2011

Причина, по которой клиентскому приложению может быть опасно напрямую обновлять базу данных, заключается в том, что для него требуются учетные данные для входа в базу данных для клиента.Сделав их доступными для клиента в значительной степени по определению, они также становятся доступными для владельца машины, на которой работает клиент.Если бы я был злоумышленником, я мог бы:

  • ... выяснить учетные данные вашей базы данных, либо перепроектировав клиентское программное обеспечение, либо просмотрев сетевой трафик,
  • ... подключиться к вашей базе данных, используя эти учетные данные,
  • ... выполнить любую команду в вашей базе данных, которую разрешено делать учетной записи вашего клиента.

Если у вас есть сервер, обновите базу данныхтогда учетные данные базы данных не нужно выдавать, и вы можете быть уверены, что база данных обновляется только тогда, когда файл действительно успешно передан, а не «ложно» (без причины).

2 голосов
/ 06 декабря 2011

Ни одно соединение клиент / сервер не является безопасным без использования уровня защищенных сокетов.

  • Передача файла с использованием SFTP или SCP.
  • Вызов веб-службы с использованием HTTPS и проверка подлинности запроса.
  • Подключите клиентское приложение к локальному порту.пересылка SSH-туннеля на сервер базы данных.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...