2008-09-17 4 views
1

SQL Server 2005では、データベースが "回復保留中"モードであっても、データベースへの読み取り専用アクセスを可能にするデータベースのスナップショットを作成できます。この機能の使用例の1つは、本番データベースのコピーを参照するレポートデータベースを作成することです。SQL 2005スナップショットセキュリティ

このシナリオでは、「生産」ソースデータベースとは異なる「スナップショット」データベースにどのようにセキュリティを実装できますか?

たとえば、運用データベースでは、データへのすべてのアクセスはストアドプロシージャを介して行われ、スナップショットデータベースでは、レポートの目的でデータベースのテーブルからユーザーが選択できます。私が見ている問題は、スナップショットデータベースのセキュリティがソースデータベースから継承され、スナップショットが厳密に読み取り専用であるため変更できないことです。

答えて

1

このデータベースの権限を管理できますか?このタイプのシナリオでは、データベースへの読み取りアクセスのみを持つ別のユーザーを追加するだけで十分ですか?これは、メインデータベース上の読み取り専用ユーザーになる可能性がありますが、スナップショットデータベースでのみ有効に使用されます。

つまり、選択したアクセス権のみが付与された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

スナップショットの作成後に権限を変更することはできませんが、回避策が1つあります。テーブルに直接アクセスする代わりに、代わりにビューを使用する必要があります。ビューがレポートのためにのみ使用されている場合は、元のデータベースで厳密なセキュリティを設定してから、ユーザーにスナップショットのビューをヒットさせることができます。有効にするには、基になるテーブルのアクセスを制限する必要があります。