私が書いているアプリケーションの場合、ファイルがネットワーク上のどのコンピューターから来たのかをプログラムで調べたいと思っています。どうすればこれを達成できますか?
ネットワーク トランザクションを監視する必要がありますか? それとも、このデータは Windows のどこかに保存されていますか?
私が書いているアプリケーションの場合、ファイルがネットワーク上のどのコンピューターから来たのかをプログラムで調べたいと思っています。どうすればこれを達成できますか?
ネットワーク トランザクションを監視する必要がありますか? それとも、このデータは Windows のどこかに保存されていますか?
はい、ネットワークトラフィックの傍受に基づいてファイル転送を検出するか、何らかの方法でファイルを変更できる場合は、公開鍵暗号を使用してマシン固有の鍵を使用してファイルに署名する必要があるようです。転送されます。
ファイルがローカル システムにコピーされるとき、Windows はファイルがコピーされた場所の記録を保持しません。したがって、それを作成したアプリケーションがそのような情報をファイルに保存しない限り、その情報は失われます。
ファイル監査を使用すると、ファイルとディレクトリの操作を追跡できますが、ソース パスとファイル コピー (誰がいつ作成したか) は含まれないと思います。
Windows がインターネットからダウンロードしたファイルの ZoneInfo を処理するのと同じように、宛先コンピューター、または各ファイルに添付された代替データ ストリームにレコードを追加するファイル ホスティング コンピューターでサービスを作成します。
マシン A でバックグラウンド プロセスを実行して、各ファイルに、マシン A によってそのような日時にタグ付けされたものとして「タグ付け」することができます。次に、マシン B がファイルをダウンロードすると、NTFS ファイルシステムを使用していると仮定すると、A からのタグを確認できます。または、サーバーでプロセスを実行できない場合は、パケットを介して「クライアント」側で NTFS ストリームを使用できます。他の人が説明したスニッフィング方法。ここでのボーナスは、NTFS システム間である限り、将来のファイル コピーがデータを保持することです。
別の方法: すべてのファイル転送を (ネットワークのドラッグ アンド ドロップではなく) Web ポータル経由で行う必要があるという要件を作成します。組み込みのロギング。または、他のタイプのファイル取得プロキシ。このような手順を管理できますか?