Что такое безопасная предлагаемая архитектура для общедоступного веб-сайта, использующего конечную точку API OData?
Как предлагают некоторые статьи, создать ~/api/[ODataControllerCalls]
, Однако, когда эти вызовы выполняются непосредственно с клиентских элементов управления (таких как KendoUI), это создает потенциальную проблему безопасности, позволяя потенциальным злоумышленникам начать поиск дополнительных конечных точек.
Мы хотим использовать конечную точку OData в нашем следующем раунде приложений MVC4. Каковы некоторые предложения о том, как структурировать это, чтобы быть более безопасным?
Например, в приложении, аутентифицированном пользователем, обычно все данные будут доступны через класс Controller/Model, однако, поскольку некоторые элементы управления MVC могут напрямую нацеливаться на конечную точку OData, как, например, "/GetUserLogins()", где пользователь видит список их логинов, обработать?
Предлагается ли отправлять UserID (GUID) в строке запроса, которая выполняет проверку во время вызова?