Для роли db_denycustomerя хочу, чтобы только SELECTable можно было выбрать код столбца таблицы клиента, а не все остальные. Итак, я сделал это:
DENY SELECT ON dbo.customer TO db_denycustomer
GRANT SELECT ON dbo.customer (code) TO db_denycustomer
... и работает нормально. Круто! Но почему ?
В связанных статьях я читал, что стек разрешений, но DENYимеет приоритет. Напротив, в моем случае, кажется, что последний «запрос» разрешения имел приоритет. Конечно, если я выполню их в обратном порядке, последний также DENYскрывает столбец кода.
Не могли бы вы уточнить это?
Я также включил настройки по умолчанию db_datawriterи db_datareaderроли для пользователя, с которым я тестировал.