Я изменил целевую платформу моего приложения ASP.NET Core с .NET Core 2.2 на 3.0.
Мое приложение содержит реализацию пользовательского поставщика политики аутентификации (IAuthorizationPolicyProvider
).Начиная с .NET Core 3 интерфейс IAuthorizationPolicyProvider содержит новый метод Task<AuthorizationPolicy> GetFallbackPolicyAsync()
.
В чем разница между Task<AuthorizationPolicy> GetDefaultPolicyAsync();
и Task<AuthorizationPolicy> GetFallbackPolicyAsync()
.И как следует реализовать GetFallbackPolicyAsync
?Должен ли он быть реализован как GetDefaultPolicyAsync
?
В настоящее время мой класс реализует метод GetDefaultPolicyAsync
следующим образом:
public CustomPolicyProvider( [NotNull] IOptions<AuthorizationOptions> options )
=> _fallbackPolicyProvider = new DefaultAuthorizationPolicyProvider( options ?? throw new ArgumentNullException( nameof(options) ) );
public Task<AuthorizationPolicy> GetDefaultPolicyAsync() => _fallbackPolicyProvider.GetDefaultPolicyAsync();