при создании нового проекта в Visual Studio, если мы нажимаем кнопку Изменить аутентификацию , отображаются 4 варианта аутентификации.Согласно моим исследованиям, вариант Индивидуальные учетные записи более вероятен для моего случая.Я пытаюсь реализовать client_credentials поверх его типа предоставления пароля.Мне удалось войти в систему пользователей.
Теперь мне нужно реализовать UserManager для поддержки логинов clientId и secretKey.
В классе User Manager есть 4 метода, которые запрашивают пользователя;
public virtual Task<TUser> FindAsync(string userName, string password);
public virtual Task<TUser> FindByEmailAsync(string email);
public virtual Task<TUser> FindByIdAsync(TKey userId);
public virtual Task<TUser> FindByNameAsync(string userName);
Но нетметод как;
public virtual Task<TUser> FindByClientIdAndSecretAsync(string clientId, string secretKey);
Какое решение для этого самое элегантное?Должен ли я создать один?
РЕДАКТИРОВАТЬ: Очевидно, интерфейс хранилища пользователей не поддерживает пользователей машины.Или я должен использовать userId в качестве clientId.
public interface IUserStore<TUser, in TKey> : IDisposable where TUser : class, IUser<TKey>
{
Task CreateAsync(TUser user);
Task DeleteAsync(TUser user);
Task<TUser> FindByIdAsync(TKey userId);
Task<TUser> FindByNameAsync(string userName);
Task UpdateAsync(TUser user);
}