2016-12-12 70 views
-1

コンテキスト: 私は、アプリケーションプール用のカスタムWindowsアカウントを使用し、Oracleユーザー認証を有効にして、設定ファイルにDBのユーザー名とパスワードを格納する必要がないようにしています。IIS AppPool IDパスワードの保護

問題: この設定は機能しますが、私はappcmd.exeを使用してパスワードを '回復'できることに気付きました。管理上および物理的なアクセス権を持つユーザーがプレーンテキストでパスワードを読み取ることができないようにする方法はありますか?

これはWindows 2016マシンのIIS 10です。パスワードは、applicationHost.configファイルを調べると、が暗号化されているように見えます。 次のコマンドパスワードを示しています

質問に答える
%systemroot%\system32\inetsrv\appcmd.exe list apppool "ImoAppPool" /text:* 

enter image description here

答えて

0

:「?行政との物理的なアクセス権を持つ誰かが平文でパスワードを読み取ることができないことを確認する方法はありますが」

パスワードを復元できるように保存しないでください。約100msの間、ランダムな塩でHMACを繰り返し、ハッシュで塩を保存してください。 PBKDF2、別名Rfc2898DeriveBytespassword_hashBcryptなどの機能を使用してください。このハッシュ値をDBに保存します。要点は、攻撃者が無差別にパスワードを見つけるのに多くの時間を費やすことです。

これを実行するのがあなたのコントロールではない場合、解決策は安全ではなく、使用しないでください。

ユーザーを保護することは重要です。安全なパスワード方法を使用してください。

+0

多分私は答えを理解していないか、私は明確な方法で質問しませんでした。 IISは、特定のユーザーアカウントで実行する必要があります。私は正しいパスワードを提供する必要があります、私はそれが変換されたパスワードを提供し、それを実行することができます(私は思う)方法はありません。次に、パスワードの保存方法を選択します。設定ファイルを調べると、パスワードが変換されます( 'password =" [enc:IISWASOnlyCngProvider:cNM0PbFgUgr ... ')。しかし、質問からコマンドを実行すると、プレーンテキストが表示されます。 –

+0

ポイントはパスワードを保護する必要があります。パスワードを保護する必要があります。 – zaph

+0

パスワードを保存する方法は、私のコントロールの範囲を超えています。私の質問は、サーバーをこのような方法で設定し、オペレーティングシステムに対して認証し、そのパスワードをプレーンテキストで復元することができないかどうかということでした。認証トークン)を使用することができますが、Webサーバーを実装するのではなく、設定します。 –

関連する問題