В чем разница между ДО и ПОСЛЕ операций dml? (Безопасность на уровне строк) - PullRequest
0 голосов
/ 26 октября 2018

Я создал политику безопасности для своей базы данных Ms Sql Server. И я пытаюсь выяснить разницу между ДО и ПОСЛЕ операций dml. Также было бы здорово узнать, что является причиной для его использования. Я не смог найти четких объяснений моей темы.

CREATE SECURITY POLICY [Security].DealershipsCarsFilter 
    ADD FILTER PREDICATE [Security].fn_securitypredicate(DealershipId)   
        ON dbo.[DealershipsCars],  
    ADD BLOCK PREDICATE [Security].fn_securitypredicate(DealershipId)   
        ON dbo.[DealershipsCars] AFTER INSERT
    WITH (STATE = ON);  

1 Ответ

0 голосов
/ 26 октября 2018

Для UPDATE вы можете указать разные политики для BEFORE и AFTER, чтобы позволить вам оценить старые значения в строке до применения обновления и новые значения в строке после обновления. применяется. Или вы можете пожелать, чтобы в обеих ситуациях применялась одна и та же политика. Выбор за вами.

Для INSERT или DELETE вы можете выбрать только AFTER или BEFORE, соответственно, поскольку строки не существуют в другом состоянии.

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

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