2008-09-17 2 views
1

В SQL Server 2005 можно создать моментальный снимок базы данных, который позволяет доступ к базе данных только для чтения, даже если база данных находится в режиме ожидания ожидания. Одним из вариантов использования этой возможности является создание базы данных отчетов, которая ссылается на копию производственной базы данных, которая поддерживается в настоящее время посредством лог-доставки.SQL 2005 Snapshot Security

В этом случае, как я могу реализовать безопасность в базе данных «моментальных снимков», отличной от исходной базы данных «production»?

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

ответ

1

Можете ли вы управлять разрешениями для этой базы данных? Будет ли добавление отдельного пользователя, который имеет доступ только для чтения к базе данных, достаточно для такого типа сценария? Это может быть пользователь, доступный только для чтения, в основной базе данных, но эффективно используется только для моментального снимка db.

i.e. Добавить нового пользователя, readerMan5000, которому предоставляется только выделенный доступ к соответствующей базе данных. Затем попросите пользователей пройти аутентификацию через эти новые учетные данные.

Примечание к будущим комментаторам, вы можете прочитать: http://www.simple-talk.com/sql/database-administration/sql-server-2005-snapshots/ или http://msdn.microsoft.com/en-us/library/ms187054(SQL.90).aspx , прежде чем открыть свой большой рот, как я. :)

0

Вы не можете изменить разрешения после моментального снимка, но вот одно из них: вместо того, чтобы напрямую обращаться к таблицам, вместо этого нужно использовать их. Если представления используются только для отчетов, вы можете установить для них жесткую безопасность в исходной базе данных, а затем пользователи ударят по этим представлениям в моментальном снимке. Вам нужно будет ограничить доступ к базовым таблицам, но если вы хотите, чтобы он был эффективным.