net.pipe プロトコルを使用して WCF サービスをホストするクライアント アプリがあります。クライアントは、管理者ユーザーで実行されている他の WCF サービスと通信できません。
異なるユーザー間で net.pipe を使用して通信できないことを読みました。
バイパスする方法はありますか?
net.pipe プロトコルを使用して WCF サービスをホストするクライアント アプリがあります。クライアントは、管理者ユーザーで実行されている他の WCF サービスと通信できません。
異なるユーザー間で net.pipe を使用して通信できないことを読みました。
バイパスする方法はありますか?
異なるユーザー間で net.pipe を使用して通信できないことを読みました。
これは一般的には当てはまりません。ここにあなたが言及していると思うものを要約します:
Windows Vista より前のオペレーティング システムで実行している場合、問題はありません。どのプロセスも、他のローカル プロセスにアクセス可能な WCF net.pipe サービスをホストできる必要があります。
Windows Vista 以降で実行している場合、WCF サービスをホストするプロセスが昇格された特権で実行されていない限り、WCF net.pipe サービスは、同じログオン セッション (同じ対話型ユーザーのセッション内など) で実行されているプロセスにのみアクセスできます。 SeCreateGlobalPrivilege。
Windows サービスは独自のログオン セッションで実行され、特権 SeCreateGlobalPrivilege を持っているため、セルフホステッドおよび IIS ホステッドの WCF net.pipe サービスは、同じマシン上の他のログオン セッションのプロセスに表示されます。
これが問題になるほとんどのシナリオでは、回避策は常に Windows サービスで WCF サービスをホストし、必要に応じて双方向コントラクトを使用して対話セッション中にクライアントとサーバーの役割を逆にすることです。
以下も参照してください。