SQL - плохая практика предоставлять доступ только для чтения всей компании? - PullRequest
0 голосов
/ 16 ноября 2018

Я работаю в небольшом ИТ-отделе моей компании. Я создавал автоматизацию через VBA в Excel, чтобы извлекать данные из SQL и помещать их в Excel, а затем динамически форматировать и суммировать данные. Проблема, с которой я сталкиваюсь, заключается в том, что ИТ-отдел не хочет предоставлять кому-либо за пределами ИТ-отдела доступ только для чтения. Они рассматривают SQL как привилегию, а не право ... даже если он только для чтения. Они требуют соображений безопасности.

Просто чтобы прояснить ситуацию, мы НЕ устанавливаем SQL на компьютеры этих людей, и у них нет технического понимания того, как писать запросы. Кроме того, они уже могут просматривать всю информацию на интерфейсном веб-сайте.

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

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

Ответы [ 3 ]

0 голосов
/ 16 ноября 2018

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

0 голосов
/ 16 ноября 2018

Худшее, что может случиться, - это то, что пользователь знает достаточно, чтобы подключить MS Access к базе данных, написать несколько некорректных запросов и остановить все. Вы должны всегда иметь доступ к данным не ИТ-пользователям безопасным и структурированным способом. Особенно, если эта база данных является транзакционной, а не отчетной базой данных.

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

В противном случае ИТ-запросы, предпочтительно в хранимых процедурах, должны считывать данные и представлять их пользователям.

Так что это не проблема безопасности как таковая. Это скорее вопрос о том, что «мы не хотим, чтобы пользователи, не являющиеся ИТ-специалистами, были хитрыми и сбивали базу данных плохо написанными запросами».

0 голосов
/ 16 ноября 2018

Я полагаю, что свойства соединения с сервером SQL встроены в ваш код VBA, если код не виден пользователю, то у него нет возможности напрямую запросить сервер SQL.

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