2012-02-22 3 views
1

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

Я думаю о выдаче себя за пользователя (у меня есть класс имперсонатора) перед отправкой сообщения, но не уверен, как это сделать.

любые идеи о том, как наилучшим образом это сделать.

Oh! Я использую C#.

+0

Используйте стандартную систему безопасности Windows. Щелкните правой кнопкой мыши по очереди, вкладка «Свойства», «Безопасность». Разрешения «Отправить» и «Получить» могут быть назначены для каждой учетной записи пользователя. Олицетворение не имеет смысла. –

ответ

1

Какой пользователь будет исполнять исполняемый файл? Вы можете просто предоставить этому пользователю доступ к очереди и вообще избегать олицетворения.

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

+0

Итак, у меня есть 2 пользователя, кто может отправлять сообщения в очередь и тот, кто может отправлять и получать. Легко ли предоставить этим двум пользователям и только этим двум пользователям эти разрешения? – Nollaig

+0

Должно быть, вы просто установите правильные разрешения для очереди. – zmbq

+0

Важное замечание, если вы действительно хотите защитить очередь. MSMQ просто отправляет SID учетной записи пользователя в сообщение, которое может легко подделать любой, кто имеет доступ к сети. Вместо этого используйте аутентификацию/сертификаты, если сможете. –

Смежные вопросы