6


0

マネージコードでWindowsセキュリティ記述子を作成するにはどうすればよいですか?

管理対象プロセスで作成された名前付きパイプがあります。 名前付きパイプへのファイルハンドルを開こうとする2番目のプロセスがありますが、2番目のプロセスは、名前付きパイプを作成したプロセスよりも低い特権で実行されています。 私の理解では、このMSKBの記事http://support.microsoft.com/kb/813414で説明されているようなセキュリティ記述子を使用して、最初のプロセスで名前付きパイプを作成する必要があるということです。

問題は、マネージコードでこれを行う方法がわからないことです。KBの記事ではC ++を使用しています。 できればセキュリティ記述子を使用して匿名で読み書きできるように、名前付きパイプを作成する方法を知っている人はいますか? 名前付きパイプを作成した最初のプロセスの権限を下げることはオプションではありません。高い権限で実行する必要があります。

1 Answer


4


ConvertStringSecurityDescriptorToSecurityDescriptor APIをピンボークして、http://msdn.microsoft.com/en-us/libraryを渡すことができます。 /aa379567(VS.85).aspx[SDDLのセキュリティ記述子]。 記述者を詳細に制御したい場合は、http://www.codeproject.com/KB/system/accessctrl3.aspx#History [this one]などのオープンソースコミュニティでラッパークラスを見つけることができます。 http://msdn.microsoft.com/en-us/magazine/cc163883.aspx#S6 [こちら]は、名前付きパイプでセキュリティ記述子を使用する例です。