У меня проблемы с ограничением доступа к действию в контроллере (скажем, wwww.mysite.com/callback/c1). Я бы хотел, чтобы доступ к этому контроллеру мог получить только внешняя система ERP. ERP позволяет мне настроить URL-адрес обратного вызова, который будет обрабатывать запрос POST каждый раз, когда в этой системе ERP возникает определенное событие.Разрешить доступ к обратному URL-адресу только для внешней системы
Теперь я не хочу, чтобы кто-либо еще мог опубликовать что-либо по этому URL-адресу. Как я могу защитить этот URL для доступа только из системы ERP?
Я думал о жестком кодировании пользователя и пароля в URL-адресе ERP, поэтому он мог бы отправить запрос на www.mysite.com/callback/c1?userName=user & password = pass, таким образом я мог бы проверьте, являются ли учетные данные действительными и если этот запрос выполняется, но учетные данные будут видны в системе ERP.
Есть ли другой способ достичь этого?
PD: Я использую ASP.NET MVC5 PD2: у меня нет контроля над системой ERP для модификаций, я могу установить URL-адрес обратного вызова.
Предполагая, что у вас есть диапазон IP ... создайте атрибут Authorize, который вы можете украсить своим действием. Это должно помочь вам: http://stackoverflow.com/questions/473687/restrict-access-to-a-specific-controller-by-ip-address-in-asp-net-mvc-beta. –