Укажите на localhost\sqlexpress с помощью только localhost

Я поддерживаю хранимые процедуры ( MySQL имеет поддержку хранимых процедур с 5.0 ) с точки зрения безопасности - преимущества -

  1. Большинство баз данных (включая MySQL ) позволяют ограничить доступ пользователей к выполнению хранимых процедур. Четкое управление доступом к безопасности полезно для предотвращения эскалации атак привилегий. Это предотвращает возможность взлома приложений, которые могут быть запущены SQL, непосредственно из базы данных.
  2. Они абстрагируют исходный SQL-запрос из приложения, поэтому для приложения доступно меньше информации о структуре базы данных. Это затрудняет понимание людьми базовой структуры базы данных и разработку подходящих атак.
  3. Они принимают только параметры, поэтому существуют преимущества параметризованных запросов. Конечно, IMO вам все равно нужно дезинфицировать ваш вход, особенно если вы используете динамический SQL внутри хранимой процедуры.

Недостатки -

  1. Они (хранимые процедуры) трудно поддерживать и стремиться к размножению очень быстро. Это делает их проблемой.
  2. Они не очень подходят для динамических запросов - если они созданы для принятия динамического кода в качестве параметров, тогда многие преимущества сбрасываются.

26
задан Chris Missal 31 December 2012 в 18:33
поделиться

2 ответа

Просто проверенные вещи и получили его работа.

экспресс sql не включает tcp/ip по умолчанию и, когда включено не использует порт по умолчанию 1433.

, чтобы заставить это произойти необходимо открыть "Менеджер конфигурации SQL-сервера" тогда в соответствии с протоколами, включают tcp/ip. после того двойного щелчка "tcp/ip", выбирают вкладку "IP Addresses" и прокручивают к нижней части, тогда очищают "Динамические порты TCP" и вводят 1433 под Портом TCP.

после всего этого перезапуска сервис SQL-сервера и это должны работать со строкой нормального соединения.

57
ответ дан John Boker 28 November 2019 в 06:51
поделиться

Можно назвать экземпляры SQL Server к чему-либо, что Вы хотите. Я вполне уверен, можно сделать это в SQL Express также, поэтому просто назвать экземпляр, на каждой машине, к тому же имени, тогда можно просто использовать localhost\< name>.

Или еще лучше, не делайте hardcode имя базы данных. Загрузите его из некоторой машины или определенной для пользователя установки (реестр, файл конфигурации, безотносительно исков Ваше воображение:)).

0
ответ дан Danut Enachioiu 28 November 2019 в 06:51
поделиться
Другие вопросы по тегам:

Похожие вопросы: