Я бы порекомендовал сделать приложение 1 провайдером услуг и провайдером идентификации, но - ретранслятор провайдер идентификации. R-IdP действует как обычный IdP для любого приложения, которое использует его для аутентификации, но в то же время делегирует аутентификацию фактическому поставщику.
Затем настройте приложение App2 на использование App1 в качестве поставщика удостоверений.
Таким образом, вы убедитесь, что нет незаконного потока, связанного с прямым доступом к App2, и нет незаконного потока сообщений между App2 и фактическим поставщиком удостоверений.
Кроме того, вы не будете пытаться злоупотреблять протоколом, повторно используя тот же самый токен из App1 в App2, который, хотя технически возможен, звучит как нечто, что рано или поздно может вызвать проблемы.