diff --git a/src/Squidex.Core/Identity/SquidexClaimTypes.cs b/src/Squidex.Core/Identity/SquidexClaimTypes.cs index 820a75f1a..cd6c79d0f 100644 --- a/src/Squidex.Core/Identity/SquidexClaimTypes.cs +++ b/src/Squidex.Core/Identity/SquidexClaimTypes.cs @@ -13,5 +13,7 @@ namespace Squidex.Core.Identity public const string SquidexDisplayName = "urn:squidex:name"; public const string SquidexPictureUrl = "urn:squidex:picture"; + + public const string Prefix = "urn:squidex:"; } } diff --git a/src/Squidex.Read.MongoDb/Users/MongoUserEntity.cs b/src/Squidex.Read.MongoDb/Users/MongoUserEntity.cs index 029fa7138..7a2d3c9b1 100644 --- a/src/Squidex.Read.MongoDb/Users/MongoUserEntity.cs +++ b/src/Squidex.Read.MongoDb/Users/MongoUserEntity.cs @@ -6,9 +6,9 @@ // All rights reserved. // ========================================================================== +using System; using Microsoft.AspNetCore.Identity.MongoDB; using Squidex.Core.Identity; -using Squidex.Infrastructure.Security; using Squidex.Read.Users; namespace Squidex.Read.MongoDb.Users @@ -31,12 +31,16 @@ namespace Squidex.Read.MongoDb.Users { get { return inner.Claims.Find(x => x.Type == SquidexClaimTypes.SquidexDisplayName)?.Value; } } - public string PictureUrl { get { return inner.Claims.Find(x => x.Type == SquidexClaimTypes.SquidexPictureUrl)?.Value; } } + public bool IsLocked + { + get { return inner.LockoutEndDateUtc != null && inner.LockoutEndDateUtc.Value > DateTime.UtcNow; } + } + public MongoUserEntity(IdentityUser inner) { this.inner = inner; diff --git a/src/Squidex.Read/Users/IUserEntity.cs b/src/Squidex.Read/Users/IUserEntity.cs index 19279c485..50cb41ada 100644 --- a/src/Squidex.Read/Users/IUserEntity.cs +++ b/src/Squidex.Read/Users/IUserEntity.cs @@ -17,5 +17,7 @@ namespace Squidex.Read.Users string PictureUrl { get; } string DisplayName { get; } + + bool IsLocked { get; } } }