Из моего чтения RFC я не думаю, что AWS делает что-то не так, в частности (обратите внимание на мое выделение):
Если принципал, обрабатывающий претензию, не идентифицирует себя со значением в претензии "aud" , когда эта претензия присутствует , JWT ДОЛЖЕН быть отклонен.
Использование этого требования ДОПОЛНИТЕЛЬНО .
Что, на мой взгляд, означает, что с AWS все в порядке, потому что он просто пропускает утверждение в случае токена доступа, но является , идентифицирующим себя (по-своему), устанавливая его в client_id
когда он делает запрос на токене id.
Следует отметить, что сам токен доступа кодирует и обеспечивает защиту аудитории ; в том случае, если вы будете против API-интерфейсов AWS, он будет принудительно получать только те ресурсы, которые доступны для client_id / scope, для которого он был выпущен.