| 1234567891011121314151617181920212223242526272829303132333435363738 |
- using VberZero.BaseSystem.MultiTenancy;
- using VberZero.BaseSystem.Users;
- namespace VberZero.Authorization.Users;
- /// <summary>
- /// 这是一个帮助器基类,可以轻松更新 <see cref="IExternalAuthenticationSource"/>。
- /// 默认实现一些方法,但您可以覆盖所有方法。
- /// </summary>
- public abstract class DefaultExternalAuthenticationSource : IExternalAuthenticationSource
- {
- /// <inheritdoc/>
- public abstract string Name { get; }
- /// <inheritdoc/>
- public abstract Task<bool> TryAuthenticateAsync(string userNameOrEmailOrPhone, string plainPassword, Tenant? tenant);
- /// <inheritdoc/>
- public virtual Task<User> CreateUserAsync(string userNameOrEmailPhone, Tenant? tenant)
- {
- return Task.FromResult(
- new User
- {
- UserName = userNameOrEmailPhone,
- Name = userNameOrEmailPhone,
- Surname = userNameOrEmailPhone,
- EmailAddress = userNameOrEmailPhone,
- IsEmailConfirmed = true,
- IsActive = true
- });
- }
- /// <inheritdoc/>
- public virtual Task UpdateUserAsync(User user, Tenant? tenant)
- {
- return Task.FromResult(0);
- }
- }
|