2013-12-03 3 views
2

Я думаю, что у меня будут отдельные источники данных для различных функций. Почти все мои cfqueries являются операторами выбора, поэтому у моего источника данных по умолчанию будет все отключено администратором (кроме select).Каков минимальный след для источника данных ColdFusion SQL Server?

Но для источника данных «Вставить/Обновить/Удалить» мне бы хотелось узнать, могу ли я свести к минимуму его права.

Всякий раз, когда я настраиваю пользователя в Microsoft SQL Server для своего источника данных ColdFusion, я всегда перехожу под категорию Безопасность, Пользователи, Новый пользователь. В разделе «Собственные схемы» я привык проверять db_owner и под «Role Members», я проверяю db_owner.

Я получил его, чтобы работать таким образом и не оглядывался назад. Итак, теперь я оглядываюсь назад и удивляюсь, это дает моему источнику данных ColdFusion больше прав, чем нужно? Есть ли другой вариант в разделе «Собственные схемы» и/или «Члены роли», которые могут минимизировать мое воздействие?

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

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

+2

извините, в чем вопрос? –

+1

Я считаю, что это «Какой минимальный след для источника данных ColdFusion SQL Server?» – duncan

+0

http://dba.stackexchange.com/ –

ответ

3

Похоже, что вы пытаетесь сделать так, чтобы ваш источник данных/соединение имели минимальный доступ к вашему SQL Server.

Хотя верно, что источники данных ColdFusion могут ограничивать выполнение каких-либо утверждений, вы действительно хотите, чтобы ваше SQL-соединение выполняло ограничение. Скажем, у вас есть источник данных Employee_Info, но он используется для приложения ColdFusion, которое действительно должно читать только данные Employee_Info.

Что вам нужно сделать, так это на SQL Server создать только для входа в систему. Можно даже назвать его Employee_InfoRO

Также см

How do I limit the permissions of a C# program to read only on an SQLServer Database?

Это изображение одного из ответов на этот вопрос

enter image description here

Эта ссылка может также полезны

When you create a new login in SQL Server it selects db_owner by default

Почему нет ColdFusion для выбора?

ColdFusion НЕ является встроенным механизмом SQL Server. Он действительно не знает значения операторов SQL, то есть работы механизма SQL Server. ColdFusion только угадывает, что такое выбор, вставка, обновление и удаление. Он делает это путем сравнения строк и очень тяжелый. Двигатель SQL Server знает больше о безопасности БД, чем ColdFusion.

+0

Я бы также добавил, что ограничение пользователя SQL будет иметь только права на определенные базы данных (ов) на сервере SQL).Я все еще ограничиваю права на источники данных ColdFusion. –

+0

Какие преимущества вы хотите получить от этого? –

+2

Ограничение пользователя SQL только правами на одну базу данных или, по крайней мере, несколько баз данных. Таким образом, пользователь не может получить доступ к другим базам данных на этом SQL-сервере. Или вы имели в виду часть ColdFusion? В этом случае просто еще один уровень безопасности. Я согласен с вами в том, что он не так безопасен, как часть SQL-сервера, но я не думаю, что это больно. –

Смежные вопросы