MS AccessとODBCを使用してSQLサーバーに接続するプログラムに取り組んでいます。要件の1つは、ユーザーがSQLサーバーに接続するためのパスワードを知っている必要がないことです。 SQLテーブルをリンクするときに[パスワードを保存]チェックボックスをオンにしました。
パスワードがどこに保存されているか、そしてこのアクションが実行されたときのパスワードの安全性を誰かが知っていますか?
指摘したいのは、質問の2番目の部分への回答は1番目の部分とはほとんど関係がないということです。
次の場合でもパスワードは非常に強力な暗号化方式で保存されています(そうではありません)。これは、いくつかの点で、まだ安全ではありません。
中間層とすべてを備えたアプリケーションを再設計する方がはるかに良いでしょう...
同じ会話でsecurity
とMS Access
について話し合うのはいつも変だと思います...
絶対にできないアーキテクチャを変更する場合は、統合Windows認証を使用し、ユーザーアカウント(またはグループ)を管理用のdbロールに関連付けることを検討してください。このようにして、少なくとも各ユーザーはサーバー上に自分のアカウントを持ち、アクセスを(最小特権の原則に従って)制限し、共有アカウントはなく、データベースでの各ユーザーのアクションを追跡できます。
ODBCパスワードの詳細は、Windowsボックスでodbcad32.exeを起動し、ダイアログボックスを操作することで対処できます。探している詳細は、最後のいくつかの段落にあると思います- ACC2000:ODBCでMicrosoft Access .MDBを使用するとパスワードプロンプトが表示されない
これは、一般的にODBCパスワードが保存されている場所を見ると、グーグルで最初の結果でした。
それらはWindowsレジストリにプレーンテキストで保存されていることがわかります。 regedit
を開き、下を見てください。
HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBC.INI