6

IIS には、リモート マシンのドライブにアクセスできるユーザーの ID を持つアプリケーション プールで実行される Web サービスがあります。このようにして、Web サービスが実行され、リモート マシンにアクセスしてファイルを読み取ろうとするときに、無効な認証エラーは発生しません。

初めての Node.js アプリを作成しましたが、アプリからリモート マシンへのファイル ストリームへのアクセスを許可する方法がわかりません。読み取りたいリモート マシンのファイルへの UNC パス名がありますが、ファイルにアクセスするためにユーザーの資格情報を渡す必要があるのか​​、特定の資格情報で Node.js アプリを実行する必要があるのか​​ わかりません。

手がかりはありますか?

IIS 用のノードがあることは知っていますが、IIS を使用せずにこれを行う別の方法はありますか。

アップデート:

自分のユーザー アカウントでアプリを実行したところ、このアカウントはリモート マシンへのアクセスを許可するように構成されており、コードを変更せずに (つまり、UNC パスを直接使用するだけで) リモート マシンにアクセスできます。ただし、別のユーザーの資格情報を使用してこれを行うにはどうすればよいですか (つまり、Node.js での偽装ですか?)

4

1 に答える 1

2

NodeJS は Windows 固有のものではないため、Node は .NET アプリケーションのように偽装を処理しません。

しかし、それは問題ではありません。大規模な金融ネットワークで次の手法を使用しました。

ご指摘のとおり、最善の解決策は、UNC にアクセスするための十分な権限を持ち、それ以外の権限を持たない nodeJS アプリケーション専用のユーザー アカウントを持つことです。次に、アプリケーションを実行するときに、このユーザーとして実行します。

nodejs アプリケーションを実行するサービスをセットアップし、サービスでユーザー アカウントを指定することをお勧めします。これにより、はるかに簡単かつ安全になります。アプリケーションがハッキングされた場合、ハッカーはアカウントの制限を逃れることができなくなります。

于 2013-03-07T20:45:10.167 に答える