Я успешно использовал следующее в своем приложении Razor:
authenticationBuilder.AddOpenIdConnect(options =>
{
options.SignInScheme = CookieAuthenticationDefaults.AuthenticationScheme;
// Other Options....
Он создает зашифрованный повар ie в браузере и позволяет мне сохранить токен доступа и JWT для данного пользователя на их стороне. (браузер).
Но сейчас я создаю службу WebAPI (использую. NET Core 3.1). Этот сервис будет вызывать другие веб-сервисы. Он будет использовать поток учетных данных клиента OpenID Connect, чтобы получить токен доступа для отправки этим «другим веб-службам».
Этот вопрос о том, как сохранить токен доступа учетных данных клиента (поэтому мне не нужно go спрашивайте об этом при каждом звонке.)
Я не чувствую, что повар ie - верный способ сохранить эти данные. Я даже не уверен, что служба WebAPI будет работать с файлами cookie (я всегда слышал о них как о браузере). Я мог бы, конечно, просто использовать кэш в памяти для хранения этого. Я также мог бы просто позвонить своему ВПЛ вручную через HttpClient
. Но я бы предпочел использовать. Net Core Framework, если он настроен для этой ситуации.
Есть ли другие варианты для OpenIdConnectOptions.SignInScheme
в. Net Core 3.1 Framework? Если да, то, что они и как они используются?