Я читал, что прямой доступ к базе данных SQL Server через Интернет небезопасен, поэтому мне интересно, какой промежуточный я могу и должен использовать между клиентом и сервером. Каковы наилучшие методы обеспечения безопасности и производительности?Как получить доступ к базе данных SQL Server?
ответ
Для прямого доступа вам придется использовать SSL для своих подключений, но, как правило, я бы не предоставил сервер баз данных в Интернете. Я бы разработал свой путь вокруг него, например, создав веб-службы перед сервером db.
Вы можете использовать с config.php. Вы должны написать имя db, db user, db password и host в config.php. Затем вы можете использовать [? Php require ("config.php"); ?] в вас страница. Измените [и] на {и}.
У вас может быть только страница на языке вашего веб-сайта (например, PHP, JSP, ASP и т. Д.), Которая запрашивает базу данных и возвращает нужные вам данные в любом формате. Например:
Если вы используете JQuery:
с клиентской стороны:
$.ajax({
url: 'ajax/test.php',
success: function(data) {
$('.result').html(data);
alert('Load was performed.');
}
});
Здесь test.php бы подключиться к БД и запрашивать его и результат теста. php будет возвращен в переменной data.
Используйте API - Application Programming Interface. Это входная дверь для данных, которые вы хотите открыть. Это означает, что вам нужно будет определить, что вы раскрываете и как.
Например, Stack Overflow не позволяет напрямую обращаться к своей базе данных через кого-либо. НО, они позволили людям получить доступ к определенным частям своей базы данных через их Stack Apps API. Какие части? they have exposed certains parts с их собственным API -> веб-url, которые вернут данные, основанные на том, что вы запрашиваете. Результаты только в формате JSON (во время отправки этого ответа).
Here is a sample API method, который предоставляет некоторые из их баз данных. (EDIT: хмм, ни один из API ссылки работают ... ссылка я пытался показать не было ...
http://api.stackoverflow.com/0.8/help/method?method=answers/ {ID}/
)
Теперь .. если вы не хотите действительно думать о том, какие данные (например, таблицы БД, если вы используете реляционную базу данных, такую как Microsoft SQL Server или Oracle Sql Server), но хотите предоставить базу данных ENTIRE только через Интернет. .. то, может быть, вы могли бы look at using OData держаться перед своей БД, чтобы разоблачить ее?
Другое Редактировать: Я принимал вас на себя, позволяя общественности получить доступ к вашей базе данных. В противном случае это должно быть на ServerFault.
Я написал этот прекрасный ответ, относящийся к веб-доступу к SQL-серверу, а затем вы заходите и обновляете его, указав, что у вас есть настольное приложение.
При этом, как было сказано выше, наилучшей идеей является не предоставлять сервер базы данных в Интернет. Если вам это абсолютно необходимо, тогда есть несколько возможных решений.
Внедрение своего рода VPN-соединения в сеть. У меня был экземпляр, где у нас было большое количество сайтов, все подключающихся к серверу базы данных (и сети компании) через VPN. Это заставило сервер базы данных отключиться от Интернета, при этом позволяя получить половину достойного доступа к информации. Это было для розничной сети с не очень большой пропускной способностью данных
Правильно настройте свои брандмауэры и разрешения на сервере. Это нужно делать в любом случае. Вы можете поставить сервер за брандмауэром, разрешая доступ только к 1433 и только из определенного диапазона IP (который, как я полагаю, будет возможен). Таким образом, вы можете как минимум снизить количество мест, из которых может произойти возможная атака.
Все это может быть использовано в дополнение к API и службам, упомянутым выше.
- 1. Как AppPoolIdentity получить доступ к удаленной базе данных SQL Server?
- 2. Как получить доступ к корпоративной базе данных SQL Server удаленно?
- 3. Удаленный доступ к базе данных SQL Server
- 4. Доступ к базе данных SQL Server без службы SQL Server
- 5. Ограничение доступа к SQL Server Доступ к одной базе данных
- 6. Подключение к внешней базе данных SQL Server
- 7. Доступ к базе данных удаленных SQL [2002]
- 8. Как получить доступ к базе данных JasperReports Server через API?
- 9. Как получить доступ к базе данных
- 10. Доступ к удаленной базе данных SQL Server с использованием webforms
- 11. Доступ к базе данных в SQL
- 12. Доступ к базе данных SQL Server только для моего приложения
- 13. Доступ к SQL Server
- 14. SQL Server - Ошибка подключения к базе данных
- 15. Доступ к базе данных SQL из ASP
- 16. Доступ к базе данных Oracle из хранимой процедуры SQL Server.
- 17. Доступ к базе данных SQL Server с C# в WPF?
- 18. Не удается получить доступ к базе данных Azure SQL
- 19. Доступ к базе данных SQL Server на другом компьютере
- 20. Доступ к базе данных SQL Server SQL Server с помощью SQL Management Studio
- 21. Контрольный список при обновлении Доступ к базе данных SQL Server
- 22. Доступ к удаленной базе данных SQL Server при программировании WinCE
- 23. Как получить доступ к базе данных, хранящейся в папке App_Data
- 24. Доступ к базе данных ADO.NET
- 25. Как получить доступ к реляционной базе данных SQL из C#?
- 26. Не удается получить доступ к базе данных SQL
- 27. Android, как получить доступ к базе данных
- 28. Как получить доступ к базе данных?
- 29. Как получить доступ к базе данных SQL Server в WPF посредством передачи имени базы данных
- 30. Разрешить доступ к SQL Server?
Подключается ли к нему только webapp? –
Нет, я не добавил этот тег. На самом деле у меня есть традиционное настольное приложение. – user246392
Прямой доступ с приложения на стороне клиента? –