Я использую множественную авторизацию с AppSyn c (ключ API и OID C).
У меня есть запрос с именем 'getStudent', и по умолчанию аутентификация - API KEY, а OID C - дополнительный режим аутентификации.
Цель состоит в том, чтобы 'getStudent' был доступен для API KEY, однако, с OID C, только владелец должен иметь возможность извлечь свою собственную запись. Чтобы добиться этого, я отредактировал шаблон сопоставления преобразователей для getStudent:
#if( $ctx.error )
$util.error($ctx.error.message, $ctx.error.type, $ctx.result)
#else
#if($ctx.result.id == $ctx.identity.claims.get("studentid"))
$util.toJson($ctx.result)
#else
$util.unauthorized()
#end
#end
Однако, хотя это работает для OID C, API KEY больше не работает. Я не смог найти какие-либо переменные или способ выполнить 'ЕСЛИ КЛЮЧЕВОЙ РЕЖИМ API ОБНАРУЖЕН ВСЕМ, ЧТО ВСЕ ДАННЫЕ БУДУТ ВОЗВРАЩЕНЫ'.
Это известное ограничение или я что-то упускаю?
С благодарностью,