
レポートを実行するために、アプリケーションによって作成されたすべてのデータベースに対する読み取り権限を持つユーザーを作成しました。問題は、このアプリケーションが新しいプロジェクトごとに新しいデータベースを作成することです。
このサーバー上に作成されたすべての新しいデータベースに対する読み取り権限をこのユーザーに自動的に取得させる方法はありますか?
ありがとう
答え1
SQL Server インスタンスがこのアプリケーションにのみ使用されると仮定すると、同じ権限を持つユーザーをモデル データベースに追加できます。モデルは、すべての新しいデータベースのモデルとして使用されます。
答え2
CREATE_DATABASEでDDLトリガーを使用するには、http://technet.microsoft.com/en-us/library/ms186406.aspxデータベース内の一定のままのテーブルに行を記録します。次に、このテーブル内の新しい行を検索し、権限を付与するために GRANT ステートメントを実行する SQL エージェント ジョブを作成します。完了したら、行に「アクション済み」のフラグを付けます。
このソリューションを使用すると、アクションを適用するデータベースをフィルタリングできます。