1

ここに画像の説明を入力

SQL Server 2005 Express を使用する c#.net winforms アプリケーションのログインとユーザーを作成したいと思います。私の知る限り、これらの手順を作成しました。

ですから、これらの手順は正しいですか、それとも私が多くの間違いを犯しているのでしょうか。

また、ステップが欠落している場合は、新しいステップを追加してください。また、最後のステップで、ユーザーとスキーマの両方、またはユーザーのみ、またはスキーマのみにアクセス許可を付与する必要がありますか?

誰かが提供できる場合は、このモデルまたは新しいモデルの改善を求めています。大きな助けになるでしょう。

CREATE、DROP、ALTER DATABASE などの DATABASE LEVEL の GRANT & DENY パーミッションを付与したい。INSERT 、 DELETE 、 ALTER 、 UPDATE などの TABLE LEVEL の & COLUMN LEVEL の。

また、スキーマの作成は必要ですか?

私の知る限り: ログインの作成が必要です 上記で作成したログイン用のユーザーの作成が必要です スキーマの作成は必要ですか? わからない。

4

1 に答える 1

1

答え全体を変更しています。ユーザーにデータベースへの直接ログインアクセスを許可することはお勧めできません。DB は、パーミッションの適切な「チョーク ポイント」ではありません。必要な合計データベース権限を持つユーザーを 1 人作成します。次に、アプリケーションでのユーザーの役割 (データベース内のテーブルで追跡) に基づいて、アプリケーション内のユーザー機能を付与します。

データベースにユーザーごとに 1 つのログインを作成すると、多くの問題が発生します。いくつかは次のとおりです。 1. メンテナンスの悪夢 2. これで、Management Studio またはその他のツールを使用してデータベースに接続できる場合、ユーザーはデータベースに直接ログインできます。

  1. 詳しく説明する。. . アプリケーション用に 1 つのログインを作成します。MyApplicationUserのような名前を付けます。
  2. アプリケーションにテーブルを作成して、各ユーザーが属することができるロールを追跡します。これにより、アプリケーションで許可されている機能を追跡することもできます (ただし、おそらく別の表にあります)。
  3. ユーザーがアプリケーションを起動すると、同じデータベース認証情報 ( MyApplicationUser )を使用してアプリケーションが開かれます。
  4. これで、(NTID またはアプリケーション ログインに基づいて) ユーザーが誰であるかがわかり、アプリケーションでユーザーに適した機能をユーザーに提供できます)。
于 2011-02-28T08:09:15.160 に答える