Ошибки создания MSMQ: компьютер установки рабочей группы не поддерживает операцию / внутренний сертификат очереди сообщений пользователя не существует

Это сводит меня с ума, так что если кто-то можетбуду очень благодарен !!

Я пытаюсь отправить сообщение в общую очередь с сервера в домене на контроллер домена, но получаю ошибку: '

Установочный компьютер рабочей группы не поддерживает операцию. '

Я настроил MSMQ на контроллере домена и создал очередь сообщений в папке Public Queues.

Я знаю, что подобный вопрос был задан ранее:

Почему MSMQ думает, что ям на компьютере рабочей группы?

но я попробовал все то, что было предложено, но я все еще получаю ту же ошибку.

Итак, чтобы рассказать вам о том, что я пробовал из предложений:

a) Интеграция AD не была выбрана в качестве опции установки - при установке msmq она была выбрана

б) интеграция AD была выбрана, но не удалось инициализировать; проверить журналы событий - я проверил свои журналы событий, и у меня есть сообщение - Выбираемое обновление MSMQ-ADIntegration пакета MSMQ Server пакет был успешно включен.

c) Проверьте наличие потерянных объектов в Active Directory - я проверил LostAndFound Directory в Active Directory - пользователи и компьютеры, чтобы проверить отсутствие потерянных объектов в 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 - так на каждом из веб-серверов (сообщение отправлено с) и Контроллер домена (сообщение отправлено) в окне просмотра событий>Журналы приложений и услуг> Microsift> Windows>MSMQ>End2End Я включил ведение журнала.

Когда я снова попытался отправить сообщение на веб-сервер, было зарегистрировано 2 события End2End:

Сообщение с идентификатором CN = msmq, CN = ETAILWEB03, CN = Компьютеры, DC = Etail, DC = local \ 7 было отправлено в очередь PUBLIC = d7ee680c-11ec-4d9a-aa31-528dcc9b1eba

Сообщение отправлено по сети

И на контроллере домена в событиях End2End:

Сообщение пришло по сети

Из этого, кажется, пришло сообщение, поэтому я сейчас смотрю, где сообщение потеряно:

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

Изменить 5:

Хорошо, так следующее:

MSMQ сообщения получены, но не доставлены Windows 2008 R2

Я добавил анонимного пользователя и смог добавить сообщение в очередь, и это здорово, но мне нужно сделать шаг назад и дать пользователям полный контроль над тем, от кого должны поступать сообщения - так, каково имя пользователя веб-серверов, а также для безопасности мне нужно, чтобы сообщения были аутентифицированы, поэтому вернемся к одному из моих предыдущих вопросов.

Изменить 6:

Все еще боролся с этим, но получил немного дальше ...

На контроллере домена (где находится центр сертификации и принимающий MSMQ) автоматическая регистрация сертификата настроена, и я запускаю следующее на веб-серверах (которые отправляют сообщения) - run - gpupdate / force и перезапускает каждый веб-сервер.

Я убедился, что на всех веб-серверах проверена проверка подлинности и выбрано тело в свойствах очереди сообщений. Я также обновил сертификаты на всех веб-серверах, чтобы они обновлялись, и теперь я получаю следующую ошибку:

Неверное имя пути в очереди.

Я посмотрел на следующую ссылку:

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

Изменить 7:

хорошо, чтобы попытаться заставить это работать, казалось, что там, где пользователь веб-приложения не распознавался, поэтому на веб-серверах я пошел в IIS> Пулы приложений> Расширенные настройки> Идентификационные данные и установить идентификатор для сетевой службы. После того, как это было сделано, я больше не получаю сообщение об ошибке, когда запускаю свое приложение, но сообщение, похоже, не находится в общей очереди, где я ожидал бы, поэтому теперь я снова посмотрю на end2end, чтобы узнать, смогу ли я узнать куда это делось

исправлять

Как только IIS был установлен в Network Service, я дважды проверил, что отправляемое сообщение было аутентифицировано, и контроллер домена, который получил сообщение, проверил аутентификацию. Я дал полный доступ всем в моей публичной очереди, и это сработало!

Честно говоря, на этом пути было много проб и ошибок, но, надеюсь, этот пост поможет другим - благодаря Джону Б. большая часть материала, который я прочитал на эту тему, была опубликована им в той или иной форме!

Ответы на вопрос(1)

Ваш ответ на вопрос