/ / Jak wywołać bezpieczne webapi z innego webapi wywoływanego z klienta angular2 - kątowe, asp.net-web-api2, openid-connect, kątowe-lokalne-magazynowanie

Jak wywołać bezpieczne webapi z innego webapi wywoływanego przez klienta angular2 - kątowe, asp.net-web-api2, openid-connect, kątowe-lokalne-magazynowanie

Mam aplikację angular2, która jest zabezpieczona za pomocą openid-connect i oauth2. Po uwierzytelnieniu użytkownika aplikacja uzyskuje dostęp do zabezpieczonego webapi1. Wszystko działa dobrze, aż tutaj.

Teraz chcę uzyskać dostęp do innej zabezpieczonej strony webapi na przykład dla: webapi2 z metody webapi1. Jak to zrobić, np. jak zdobyć token okaziciela do przekazania w httpclient?

Używam localstorage do przechowywania tokenu dostępu w kanciastej aplikacji.

Dzięki

Odpowiedzi:

0 dla odpowiedzi № 1

Przede wszystkim musisz wyjaśnić, który z nich jest głównym serwerem uwierzytelniającym (Web API 1 lub Web API 2).

  • Jeśli Web API 2 jest głównym serwerem uwierzytelniającym, musisz pobrać token na okaziciela, używając komunikacji między serwerami API 1 i API 2 i po prostu przekazuj tokena.
  • Jeśli oba interfejsy API mają własne uwierzytelnianiezanim uwierzytelnisz API 1, musisz pobrać token z API 2, a następnie dodać token API 2, aby uzyskać API 1 i wydać token API 1 do klienta. (Uwaga: użyj tokenu API 2 zapisanego w roszczeniu podczas wysyłania żądania do interfejsu API 2).