データを維持するために SQL Server 2012 を使用する Windows アプリケーション プロジェクトがあります。
アプリを保護するために、システム内のすべてのユーザーに対して SQL Server ログインを作成することにしました。
これは良い考えですか?
データを維持するために SQL Server 2012 を使用する Windows アプリケーション プロジェクトがあります。
アプリを保護するために、システム内のすべてのユーザーに対して SQL Server ログインを作成することにしました。
これは良い考えですか?
使用していない場合はWindows Authentication
、これが最善の策です。Roles
また、ユーザーをそのユーザー グループに配置して、そのユーザー グループの権限を指定することもできます。
各ユーザーに異なる権限を持たせる必要があり、どのユーザーが各データベース エンティティ (テーブル、ビュー、ストアド プロシージャ、関数など) に対してどのような権限を持っているかを正確に把握する必要がある場合は、新しいユーザーを作成します。これにより、各アカウントの微調整、アカウントの有効化/無効化、アクセス許可の付与/取り消しを簡単に行うことができます。
@dash が述べているように、維持するのは難しくなりますが、きめ細かいレベルのセキュリティを持つことは、多数のベースを維持することよりも重要だと思います。
アクセス マトリックス テーブルを作成して、データ アクセス レベルを各ユーザーにマッピングしてみてください。次に、サインインしているユーザーのアクセス レベルに応じて、アプリケーションに読み込まれたデータを表示/非表示にすることができます。@dashが言ったように、これは維持するのが難しくなりますが、個々のログインを作成するよりも簡単なオプションかもしれません. 次に、DBA に SQL Server ログインを編集させるよりも、挿入/更新/削除スクリプトを作成してマトリックスを編集する方が簡単だと思います。