どのように効果的にデスクトップアプリケーションでは、データベースのパスワードを保存するには?

StackOverflow https://stackoverflow.com/questions/2155279

質問

私は、データベース(MySQLを)使用しています(それがアプリの呼び出しをすることができます)デスクトップアプリケーションを作ってるんです。 より多くのアプリのユーザーには、1人のデータベース・ユーザーを共有しています。 例:ジョンとマイクのアプリのユーザーは、など、「DBUSER」として、DBへの接続

問題がある:?。をどうすればよい効果的にDBのユーザーのパスワードの保存の(アプリのユーザーの障害者は、DBに格納されている)。

私が見つけた可能性のある解決策: コード内の1 - これは実際にはかなり愚かです:D テキストINIファイル中の2 - 読みやすいです! 3.のexternファイルに暗号化された - 。良いが、アプリに必要なアクセス

役に立ちましたか?

解決

  

(アプリユーザーの障害者がDBに格納されている)。

SHA1 / SHA2 のアルゴリズムを使用して、

暗号化保存されたパスワード。これは、最も使用される技術です。 私は、.NET開発者ではないが、私はかなり確信して彼らは、関数のどこかを提供することをしています。

が再び暗号化、ユーザがログイン指定されたパスワードと格納されている1つにそれを比較します。それらが等しい場合は、内のユーザーログをさせます。

他のヒント

あなたは暗号化された形式でINIファイルに保存することができます。これは、最善の方法の私見です。私は暗号化された形式での.NETアプリケーションのApp.configファイル内の接続文字列を格納します。

EDITます:

編集接続文字列に、私はapp.configファイルのCSEncryptionののAppSettingsに別の構成値を使用= "Y | N | R"

それがYの場合は、接続文字列が暗号化され、復号化し、それを使用しています。

それがNである場合は、

は、接続文字列は、それを直接使用し、暗号化されていません。

はR、接続文字列が暗号化されていない場合には、それを暗号化し、App.configファイルに「Y」に更新接続文字列とセットCSEncryption。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top