TL; DR: {OIDC: ClientId} всегда является вызывающим приложением. Еще мне нужно знать приложение "аудитория". Есть ли для этого специалист по урегулированию претензий?
Подробнее:
Вот в чем проблема:
- Приложение A и приложение B зарегистрированы в одном клиенте Azure AD B2C.
- Отдельный REST API (назовем его «API утверждений») передает настраиваемые утверждения в токены Azure AD B2C. Эти утверждения должны различаться в зависимости от приложения, потребляющего токен.
- Я использую преобразователь утверждений {OIDC: ClientId} для отправки clientId запрашивающего приложения в API утверждений, как в этом ответе.
- Когда приложение A запрашивает токен доступа для приложения B, API утверждений получает идентификатор клиента для приложения A. Однако мне нужно загрузить утверждения для приложения B, поскольку это приложение фактически будет потреблять токен. Итак, вопрос в том, как я могу получить идентификатор клиента для целевого приложения, а также для запрашивающего приложения?
Я рассмотрел возможность использования средства разрешения претензий {OIDC: scopes} для решения этой проблемы. Это может сработать, но похоже на взлом. Есть ли варианты получше?