Files
mixtape/zero.Core/Identity/UserStore.Lockout.cs
T

65 lines
1.7 KiB
C#
Raw Normal View History

2020-04-14 20:16:04 +02:00
using Microsoft.AspNetCore.Identity;
using Raven.Client.Documents.Session;
using System;
using System.Threading;
using System.Threading.Tasks;
using zero.Core.Entities;
namespace zero.Core.Identity
{
2020-04-15 01:42:06 +02:00
public partial class UserStore<TUser> : IUserLockoutStore<TUser> where TUser : class, IUser
2020-04-14 20:16:04 +02:00
{
/// <inheritdoc />
2020-04-15 01:42:06 +02:00
public Task<int> GetAccessFailedCountAsync(TUser user, CancellationToken cancellationToken)
2020-04-14 20:16:04 +02:00
{
return Task.FromResult(user.AccessFailedCount);
}
/// <inheritdoc />
2020-04-15 01:42:06 +02:00
public Task<bool> GetLockoutEnabledAsync(TUser user, CancellationToken cancellationToken)
2020-04-14 20:16:04 +02:00
{
return Task.FromResult(user.LockoutEnabled);
}
/// <inheritdoc />
2020-04-15 01:42:06 +02:00
public Task<DateTimeOffset?> GetLockoutEndDateAsync(TUser user, CancellationToken cancellationToken)
2020-04-14 20:16:04 +02:00
{
return Task.FromResult(user.LockoutEnd);
}
/// <inheritdoc />
2020-04-15 01:42:06 +02:00
public Task<int> IncrementAccessFailedCountAsync(TUser user, CancellationToken cancellationToken)
2020-04-14 20:16:04 +02:00
{
2020-04-15 01:42:06 +02:00
user.AccessFailedCount += 1;
return Task.FromResult(user.AccessFailedCount);
2020-04-14 20:16:04 +02:00
}
/// <inheritdoc />
2020-04-15 01:42:06 +02:00
public Task ResetAccessFailedCountAsync(TUser user, CancellationToken cancellationToken)
2020-04-14 20:16:04 +02:00
{
2020-04-15 01:42:06 +02:00
user.AccessFailedCount = 0;
return Task.CompletedTask;
2020-04-14 20:16:04 +02:00
}
/// <inheritdoc />
2020-04-15 01:42:06 +02:00
public Task SetLockoutEnabledAsync(TUser user, bool enabled, CancellationToken cancellationToken)
2020-04-14 20:16:04 +02:00
{
2020-04-15 01:42:06 +02:00
user.LockoutEnabled = enabled;
return Task.CompletedTask;
2020-04-14 20:16:04 +02:00
}
/// <inheritdoc />
2020-04-15 01:42:06 +02:00
public Task SetLockoutEndDateAsync(TUser user, DateTimeOffset? lockoutEnd, CancellationToken cancellationToken)
2020-04-14 20:16:04 +02:00
{
2020-04-15 01:42:06 +02:00
user.LockoutEnd = lockoutEnd;
return Task.CompletedTask;
2020-04-14 20:16:04 +02:00
}
}
}