Может ли кто-то еще подключиться к моему SQL Server, используя мою проверку подлинности Windows, или я единственный? Я видел, что в SSMS есть опция «разрешить удаленные подключения», поэтому мне интересно, есть ли у кого-то мои учетные данные для подключения, такие как имя сервера и база данных, могут ли они подключиться к нему?
Является ли имя сервера "конфиденциальной информацией" или это не имеет значения? Мне интересно, потому что я всегда не решаюсь напечатать имя своего сервера, которое является DESKTOP-xxxxx (x вместо фактических чисел, и я не уверен, что это важно или нет)
пример:
conn = pyodbc.connect('Driver = {ODBC Driver 17 for SQL Server};'
'Server=DESKTOP-xxxxxx;' **<--------is this sensitive info?**
'Database=Test_Database;' **<--------is this sensitive info?**
'Trusted_Connection=yes;')
Спасибо за ответ и объяснение, как всегда Ларну
Игнорируйте параметр SSMS, разрешающий удаленное подключение. За документация:
This configuration option is an obscure SQL Server to SQL Server communication feature that is deprecated
Используйте Диспетчер конфигурации SQL Server для просматривать, включать или отключать протоколы по желанию. Удаленный TCP/IP и именованные каналы по умолчанию отключены.
Если кто-то, кроме вас, знает ваши учетные данные Windows, у вас большие проблемы. Хотя они не смогут удаленно подключаться к SQL Server, когда протоколы отключены, они все же могут получить доступ к вашей базе данных другими способами (например, RDP на вашем компьютере и локальный доступ к SQL Server).
Имя вашего компьютера можно считать конфиденциальным, но его легко обнаружить (например, DNS). Обычно вам требуется несколько уровней, которые включают брандмауэры и уменьшение площади поверхности (например, отключенный RDP) и, возможно, обфускацию (нестандартные порты SQL), а также для защиты особо конфиденциальных данных.
Спасибо за ответ. Поскольку имя моей машины легко обнаружить, не следует ли мне «редактировать» его при публикации кода, содержащего имя моей машины, в соединениях SQL, как в моем примере выше? редактировать: просто интересно, потому что я получаю много шума за то, что у меня есть имя сервера sus, когда я заменяю его наполнителем
Рекомендуется скрывать имена серверов, IP-адреса, учетные данные и любую информацию, которая может идентифицировать вашу организацию, при публикации на общедоступных форумах, таких как SO. Информация может быть использована злоумышленниками.
Любой, кто может получить маршрут к вашему хосту и имеет действительные учетные данные, сможет подключиться к вашему хосту. Скорее всего, это означает, что устройство должно находиться в той же сети и аутентифицироваться в вашем домене, чтобы использовать аутентификацию Windows. Если у вас есть аутентификация SQL и вы используете переадресацию портов, то реально кто угодно с доступом к Интернету может подключиться, если вы не настроили правила брандмауэра должным образом.