8

これは私を少し狂わせているので、誰かが助けてくれるなら、私はとても感謝しています!!

ドメイン内のサーバーからドメイン コントローラーにパブリック キューにメッセージを送信しようとしていますが、次のエラーが発生します。

「ワークグループ インストール コンピュータは操作をサポートしていません。」

Domain Controllers で MSMQ をセットアップし、Public Queues フォルダにメッセージ キューを作成しました。

同様の質問が以前に尋ねられたことを知っています:

MSMQ が私がワークグループ コンピューターにいると判断するのはなぜですか?

提案されたすべてのことを試しましたが、それでも同じエラーが発生します。

だから、提案から私が試したことを紹介します:

a) セットアップ オプションとして AD 統合が選択されていない - msmq のインストール時にこれが選択された

b) AD 統合が選択されましたが、初期化に失敗しました。イベント ログを確認してください - イベント ログを確認したところ、次のメッセージが表示されました - パッケージの選択可能な更新 MSMQ-ADIntegration MSMQ サーバー パッケージが正常にオンになりました。

c) Active Directory で孤立したオブジェクトを確認します - Active Directory ユーザーとコンピューターで LostAndFound ディレクトリを確認し、AD で孤立したオブジェクトがないことを確認しました

そして、私は次の指示に従いました: http://technet.microsoft.com/en-us/library/cc730960.aspx

また、アンインストールして再起動し、再インストールして、孤立したオブジェクトがないことを再度確認しました。

また、メッセージを送信するすべてのサーバーに msmq をインストールする必要がありますか? 現時点では、十分だと思ったドメインコントローラーにしかありません。

編集 1: メッセージを送信するすべてのサーバーに msmq を追加しました (それらは負荷分散されているため、それらのいずれでもかまいません) msmq は既にインストールされていましたが、パブリック キューがないため、再インストールして再インストールしました (選択時に適切なボックスをすべてチェックします)。 msmq - ディレクトリ サービスの統合/ルーティング サービスなど。現在、パブリック キューがあり、次のような新しいエラーが発生しています。

「ユーザーの内部メッセージ キュー証明書が存在しません。」

編集2:

私はまだこれに取り組んでいますが、いくつかの進歩を遂げました - 認証局のドメインコントローラーをチェックしたときはそこにありましたが、IIS を見ると仮想ディレクトリ CertServ がありませんでした - 説明についてはリンクを参照してください:

http://msdn.microsoft.com/en-us/library/windows/desktop/ms755466%28v=vs.85%29.aspx

この問題を解決したら、次のように各サーバーのコンピューター証明書を要求します。

http://technet.microsoft.com/en-us/library/cc740173%28v=ws.10%29.aspx

うまくいけば、これはうまくいくでしょう!

編集 3: わかりましたので、ごみのインターネットの理由で証明書を要求することはできませんが、次のクープケで修正されることを願っています。だから私は違いを生まなかった自己認証を試み、UseAuthentication = true、UseEncryption = trueを外し、認証済みボックスのチェックを外し、暗号化をオプションに設定しました。認証に何か問題があると思わせるエラーメッセージが表示されなくなりました(Active Directoryに関係する)しかし、エラーメッセージが表示されず、表示されるはずのページがないという意味で失敗していません私のサイトに表示されます。ドメイン コントローラのパブリック キュー メッセージにメッセージがありません...

問題を引き起こしているドメイン内で実行しようとすると、動作するように思われるローカルでこれを実行しました。

編集4:

これに関する私の進捗状況をお知らせします - メッセージがドメインコントローラーに送信されていることを確認したかったので、MSMQ End2End 監視を調べました - したがって、各 Web サーバー (メッセージの送信元) とイベント ビューアーのドメイン コントローラー (メッセージの送信先) > [アプリケーションとサービス ログ] > [Microsoft] > [Windows] > [MSMQ] > [End2End] ログを有効にしました。

Web サーバーでメッセージを再度送信しようとすると、2 つの End2End イベントがログに記録されました。

  1. ID CN=msmq,CN=ETAILWEB03,CN=Computers,DC=Etail,DC=local\7 のメッセージがキュー PUBLIC=d7ee680c-11ec-4d9a-aa31-528dcc9b1eba に送信されました

  2. ネットワーク経由で送信されたメッセージ

そして、End2End イベントのドメイン コントローラーで:

  1. ネットワーク経由でメッセージが届きました

これから、メッセージが到着したようですので、メッセージが失われた場所を探しています。

https://groups.google.com/forum/?fromgroups=#!topic/microsoft.public.msmq.networking/88FYCvO2YwQ

編集5:

わかりましたので、次のとおりです。

MSMQ メッセージが受信されたが配信されなかった Windows 2008 R2

私は匿名ユーザーを追加し、キューにメッセージを追加することができました。これは素晴らしいことですが、今は一歩下がって、メッセージを受信する必要があるユーザーにのみ完全な制御を与える必要があります-したがって、Webサーバーのユーザー名は何ですか?セキュリティのために、メッセージを認証する必要があるため、以前の問題の1つに戻ります。

編集6:

まだこれに苦労していますが、もう少し進みました...

ドメインコントローラー (認証局と受信 MSMQ がある場所) で証明書の自動登録が構成され、Web サーバー (メッセージを送信する) で次を実行します - 実行 - gpupdate /force および各 Web サーバーを再起動します。

すべての Web サーバーで認証がチェックされ、メッセージ キューのプロパティで [本文] が選択されていることを確認しました。また、すべての Web サーバーの証明書を更新して、それらが最新であることを確認しました。現在、次のエラーが発生しています。

キューのパス名が無効です。

次のリンクを見ました。

http://blogs.msdn.com/b/johnbreakwell/archive/2010/03/24/understanding-how-msmq-security-blocks-rpc-traffic.aspx

編集7:

これを機能させるために、Web アプリケーション ユーザーが認識されていないように見えたので、Web サーバーで IIS > アプリケーション プール > 詳細設定 > ID に移動し、ID を Network Service に設定しました。これが完了すると、アプリケーションを実行したときにエラーメッセージが表示されなくなりましたが、メッセージが期待されるパブリックキューにメッセージが含まれていないようです。どこへ行った。

修理

IIS が Network Service に設定されたら、送信されたメッセージが認証されていることと、メッセージを受信して​​いたドメイン コントローラーが認証されていることを再確認しました。パブリック キューの全員にフル アクセスを許可したところ、うまくいきました。

正直に言うと、途中で多くの試行錯誤がありましたが、うまくいけば、この投稿が他の人に役立つことを願っています.john Bのおかげで、私がこの主題について読んだほとんどのものは、何らかの形で彼によって投稿されました!

4

1 に答える 1

0

「ユーザーの内部メッセージ キュー証明書が存在しません。」

メッセージを送信する各サーバーに対話的にログオンします。
送信アプリが実行されているユーザー アカウントを使用します。
これにより、そのアカウントのマシンごとに 1 つの証明書が作成されます。

于 2012-09-19T23:44:40.770 に答える