Последовательность посредничества в шлюзе API WSO2 не безопасна? - PullRequest
0 голосов
/ 09 марта 2020

У меня возникла проблема с пользовательской последовательностью посредничества WSO2.

Цель последовательности - отфильтровать JSON ответ API в зависимости от приложения вызывающей стороны.

Я использую посредник сценариев для загрузки JavaScript и включенного динамического c сценария с именем приложения вызывающей стороны.

Динамический c сценарий загружается с свойство, которое устанавливается с помощью выражения $ctx:api.ut.application.name.

Когда конечная точка вызывается одновременно двумя различными приложениями (назовем их app1 и app2), включенный сценарий может быть неправильным (app2 вызывает и для свойства установлено значение app1).

Является ли выражение $ctx:api.ut.application.name поточно-ориентированным?
Или свойство appli_rgpd использует неверную область действия?

Я запускаю версию 2.6.0 из WSO2.

<sequence xmlns="http://ws.apache.org/ns/synapse"  name="filterRGPDPartnerSequence">

    <property name="JSONPayload" expression="json-eval($.)" />
    <property name="appli_rgpd"  expression="$ctx:api.ut.application.name"/>
    <property name="keyDestination" expression="'repository/scripts/filterPartner'" scope="default" type="STRING"/>
    <property name="dynamicKeyDestination" expression="fn:concat('repository/scripts/', get-property('appli_rgpd'))" scope="default" type="STRING"/>

    <script language="js" key="{get-property('keyDestination')}" function="transform">
            <include key="{get-property('dynamicKeyDestination')}"/>
    </script>
</sequence>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...