Меня попросили предоставить SELECT, INSERTи UPDATEк данному пользователю для всех таблиц в базе данных. Я закончил тем, что добавил пользователя db_datareaderи предоставил его INSERTи UPDATEна уровне базы данных.
Но это заставило меня задуматься, в чем разница (если есть) между предоставлением пользователю SELECTразрешения на уровне базы данных или добавлением его к db_datareaderроли? И есть ли лучшая практика так или иначе?