Я использую провайдера Identity asp.net с промежуточным программным обеспечением OWIN с OAuth в своем приложении WebAPI. Используя шаблон иМногократные времена жизни Token в WebAPI2 с идентификатором asp.net
https://www.nuget.org/packages/Microsoft.AspNet.Identity.Samples
Я работает OAuth на моих WebAPI конечных точек. Однако я не вижу, как расширить эту архитектуру, чтобы обеспечить различные сроки жизни Token для разных запросов.
Например, мой REST API будет использоваться веб-приложением и мобильным приложением. Я хочу, чтобы мобильное приложение получало гораздо больше времени на токен, чем веб-приложение.
В моем Startup.Auth.cs файл я вижу следующего OAuth Конфигурация-
// Enable the application to use bearer tokens to authenticate users
app.UseOAuthBearerTokens(new OAuthAuthorizationServerOptions
{
TokenEndpointPath = new PathString("/Token"),
Provider = new ApplicationOAuthProvider<ApplicationUserManager, DirectoryUser, Guid>(PublicClientId),
AuthorizeEndpointPath = new PathString("/api/Account/ExternalLogin"),
AccessTokenExpireTimeSpan = TimeSpan.FromDays(14),
AllowInsecureHttp = true
});
Есть ли способ, чтобы изменить это поведение каждого запроса токена? Например, я мог бы выставить «/ Token» -> 14 дней и «/ DeviceToken» -> 60 дней. Это возможно?
Спасибо за то, что вы обновили свой вопрос с ответом. Я буду делать что-то подобное в ближайшем будущем, и ваш вопрос ответ будет очень кстати. –
Нет проблем, я буду держать его открытым на день или около того, если у кого-то есть лучшее решение, тогда я отмечу его ответом – thebringking
Sweet. Тот же вопрос. Ответил ... спасибо! –