Web アプリケーションでは、データを取得するために、最初にユーザーの認証を要求できます。認証も Web サーバー側で行われます。
関連するサービスがなく、アプリケーションがデータベースに直接接続するローカル ネットワーク アプリケーションについてはどうでしょうか (データベースはサーバー PC 上にあります)。このテーブルは認証されたユーザーのみが読み取ることができる、このテーブルはすべてのユーザーのみが読み取ることができるなど、どうすればよいでしょうか?
Web アプリケーションでは、データを取得するために、最初にユーザーの認証を要求できます。認証も Web サーバー側で行われます。
関連するサービスがなく、アプリケーションがデータベースに直接接続するローカル ネットワーク アプリケーションについてはどうでしょうか (データベースはサーバー PC 上にあります)。このテーブルは認証されたユーザーのみが読み取ることができる、このテーブルはすべてのユーザーのみが読み取ることができるなど、どうすればよいでしょうか?
認証なしでデータベース (mySQl、Oracle、SQLServer) に接続することはできません。
通常、接続情報は構成ファイルに保存しますが、そうせず、ユーザーに独自の資格情報を提供するように依頼することもできません。
ほとんどの SGBD では、ユーザーごとに読み取り/書き込み権限を構成できます。
あなたの質問を正しく理解している場合ネットワーク上のすべてのユーザーがドメインに属している場合、Windows認証を使用しているため、接続文字列は次のようになります。
Data Source=myServerAddress;Initial Catalog=myDataBase;Integrated Security=SSPI;
それ以外の場合は、ユーザー認証を使用する必要があります。
Data Source=myServerAddress;Initial Catalog=myDataBase;User Id=myUsername;Password=myPassword;
これらはすべてSQLサーバーに対して行われます:
他の人はこれをチェックしてください。
それが役に立てば幸い
Web アプリケーションの場合と同じように、データベース自体のアクセス許可を構成する必要があります。通常、デスクトップ クライアントの場合は、DB ですべての操作を実行するのに十分な権限で Web アプリを実行するユーザーを許可します。個々のユーザーに適切な権限を付与します。
このような設計では、通常よりも多くのアクセスが DB に公開されることに注意してください。