0

これは、リモート レジストリ アクセスについて何度か話題になっていることは知っていますが、これを実装する方法に関する良い例を見つけることができません。

私はhttp://www.codeproject.com/KB/cs/cpimpersonation1.aspxを見つけましたが、これは私が望むことを行うコードを持っているようですが、これはアプリが実行されているのと同じ PC に接続しているようです。私が望むのは、別のドメインのリモート PC に接続することです。

私はいくつかの読書を行ってきましたが、このコードを変更する方法がわかりません。

コードを使用してリモートPCに接続する方法について、何か助けていただければ幸いです。

4

1 に答える 1

4

次の記事から始めることができます:RegistryKey.OpenRemoteBaseKey。ただし、ユーザーアカウントは、このリモートマシンのレジストリでの操作を許可されている必要があります。そして、なりすましはあなたのタスクを解決するための最良の方法ではありません。LogonUserは、呼び出されたマシン上に新しいセキュリティコンテキストを作成します。つまり、リモートレジストリにアクセスする権限を持つユーザーには、ローカルにログオンする権限も必要です。これは非常に強い要件です。

別の解決策を提案します。レジストリにアクセスする前に、WNetAddConnection2を使用して、レジストリにアクセスするための適切な権限を持つユーザーの資格情報を使用して、リモートコンピューター上のIPC$共有への接続を作成できます。レジストリでの作業が終了したら、接続をキャンセルすることを忘れないでください。

于 2011-06-06T13:57:23.717 に答える