У нас есть приложение, которое использует экземпляр Sql Server локально для своего внутреннего хранилища. У администратора для входа в Windows было отозвано право системного администратора, и вместо этого были созданы два входа в систему с помощью sql; один для приложения с секретным паролем и один логин только для чтения, с помощью которого пользователи могут просматривать необработанные данные.
Это работало нормально, пока мы не перешли на FileStreams, который требует встроенной аутентификации Windows. Итак, теперь необходимо заменить логины на сервере sql.
В результате я сейчас просматриваю все наши логины, но не уверен, как это возможно. Кажется, что приложению требуется полный доступ для чтения / записи, но мне все еще нужно заблокировать запись в таблицы, чтобы пользователь не мог войти в базу данных и удалить данные случайным образом. Есть ли у кого-нибудь советы по настройке нескольких уровней безопасности с использованием интегрированных учетных записей Windows, или вы можете направить меня для дальнейшего чтения? Спасибо.
Взгляните на роли приложения, которые могут дать вам то, что вам нужно.
Вот ссылка, чтобы начать http://msdn.microsoft.com/en-us/library/ms190998.aspx
Не уверен, что это будет правильный способ сделать это, но не могли бы вы настроить свое приложение для олицетворения учетной записи входа в Windows, которую вы настроили только для приложения? Затем, когда пользователь запускает приложение, он может переключить контекст на этот логин, когда ему нужно подключиться к SQL Server.