У меня есть эта проблема, которая связана с записью сообщений MSMQ с машины A (Windows 7) на машину B (Windows Server 2008), которая находится в той же сети. Эта проблема возникает только тогда, когда сообщение отправляется из локальной учетной записи; он отлично работает при отправке сообщения из моей учетной записи пользователя домена и пользователя локальной системы (LocalService).
Информация и устранение неполадок на данный момент:
Очередь недоставленных сообщений на машине A заполнена сообщениями с пометкой «Доступ запрещен».
Очереди приема на машине B имеют все разрешения, предоставленные группе «Все». Это также относится к вышележащим параметрам безопасности функции «Очередь сообщений». Я также попытался предоставить все разрешения для имени компьютера A.
События отображаются в разделе «Средство просмотра событий / Приложения и службы / Microsoft / Windows / MSMQ / End2End компьютера A» с пометкой «Сообщение пришло по сети». Однако соответствующие сообщения не отображаются в разделе «Просмотр событий» / «Журналы Windows» / «Приложение» или «Безопасность».
Для сообщений, отправленных с машины A, и для очередей приема на машине B включена транзакционная настройка.
Я попытался отключить брандмауэр Windows, но безрезультатно.
Вопрос: Я подозреваю, что это как-то связано с тем, что машина B не распознает локальную учетную запись, используемую на машине A. Можно ли каким-то образом предоставить этой учетной записи правильное разрешение на машине B, чтобы машина A могла писать в очередь машины B?
Оказывается, мне нужно было добавить разрешение «Отправить сообщение» для группы пользователей «АНОНИМНЫЙ ВХОД» в настройках безопасности очереди MSMQ.
Эти страницы привели меня к ответу:
Доступ к системе очереди сообщений запрещен Windows 7 Чтение Windows 2003 - Windows 2008