.NET - Лучшая практика для подключения к источнику данных? - PullRequest
2 голосов
/ 24 января 2012

Я создаю клиентское приложение, которое будет использовать серверную часть SQL Server для хранения постоянных данных. В прошлом я всегда делал это, используя строки подключения, которые обычно хранятся в реестре. Затем я ищу это значение реестра и использую его для инициализации моего SQLConnection.

Однако мне интересно, является ли этот метод наилучшей практикой? Другой вариант, который приходит на ум, - это создать системное соединение ODBC на клиентском компьютере, который может получить доступ к хранилищу данных. Это было бы лучшим решением, так как строка подключения была бы менее заметна, однако это также означает, что ODBC-соединение необходимо будет создавать на каждом компьютере, на котором установлен клиент.

Каковы рекомендации по подключению к хранилищам данных, как указано выше?

Ответы [ 3 ]

1 голос
/ 24 января 2012

Ваше клиентское приложение имеет двухуровневую архитектуру. Рекомендуется использовать проверку подлинности Windows ("Trusted_Connection=yes" в строке подключения).

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

Выбор режима аутентификации :

Когда пользователь подключается через учетную запись Windows, SQL Server проверяет имя учетной записи и пароль с использованием принципала Windows токен в операционной системе. Это означает, что идентификатор пользователя подтверждено Windows. SQL Server не запрашивает пароль, и не выполняет проверку личности. Проверка подлинности Windows режим аутентификации по умолчанию, и гораздо более безопасный, чем SQL Проверка подлинности сервера. Аутентификация Windows использует безопасность Kerberos протокол, обеспечивает применение политики паролей в отношении проверка сложности для надежных паролей, обеспечивает поддержку блокировка учетной записи, и поддерживает срок действия пароля. Соединение установлено использование проверки подлинности Windows иногда называется доверенным соединением, потому что SQL Server доверяет учетным данным, предоставленным Windows.

0 голосов
/ 24 января 2012

Обычно, если я создаю приложение, которое будет подключаться к центральной базе данных SQL, я использую проверку подлинности windows / AD для обработки части проверки подлинности строки подключения. Полное доменное имя или IP-адрес сервера жестко заданы.

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

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

0 голосов
/ 24 января 2012

Я использую LINQ to SQL, возможно, это не самый эффективный способ для больших баз данных, но если вы знакомы с ООП, его будет легко освоить и он будет мощным.

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...