|
|
|
@ -32,24 +32,19 @@ namespace Squidex.Domain.Users.MongoDb |
|
|
|
[BsonElement] |
|
|
|
public HashSet<string> Roles { get; set; } = new HashSet<string>(); |
|
|
|
|
|
|
|
internal void AddLogin(UserLoginInfo login) |
|
|
|
internal string? GetToken(string provider, string name) |
|
|
|
{ |
|
|
|
Logins.Add(login); |
|
|
|
return Tokens.Find(x => x.LoginProvider == provider && x.Name == name)?.Value; |
|
|
|
} |
|
|
|
|
|
|
|
internal void AddRole(string role) |
|
|
|
internal void AddLogin(UserLoginInfo login) |
|
|
|
{ |
|
|
|
Roles.Add(role); |
|
|
|
Logins.Add(new UserLoginInfo(login.LoginProvider, login.ProviderKey, login.ProviderDisplayName)); |
|
|
|
} |
|
|
|
|
|
|
|
internal void RemoveRole(string role) |
|
|
|
{ |
|
|
|
Roles.Remove(role); |
|
|
|
} |
|
|
|
|
|
|
|
internal void RemoveLogin(string provider, string providerKey) |
|
|
|
internal void AddRole(string role) |
|
|
|
{ |
|
|
|
Logins.RemoveAll(x => x.LoginProvider == provider && x.ProviderKey == providerKey); |
|
|
|
Roles.Add(role); |
|
|
|
} |
|
|
|
|
|
|
|
internal void AddClaim(Claim claim) |
|
|
|
@ -62,24 +57,29 @@ namespace Squidex.Domain.Users.MongoDb |
|
|
|
claims.Foreach((x, _) => AddClaim(x)); |
|
|
|
} |
|
|
|
|
|
|
|
internal void RemoveClaim(Claim claim) |
|
|
|
internal void AddToken(string provider, string name, string value) |
|
|
|
{ |
|
|
|
Claims.RemoveAll(x => x.Type == claim.Type && x.Value == claim.Value); |
|
|
|
Tokens.Add(new UserTokenInfo { LoginProvider = provider, Name = name, Value = value }); |
|
|
|
} |
|
|
|
|
|
|
|
internal void RemoveClaims(IEnumerable<Claim> claims) |
|
|
|
internal void RemoveLogin(string provider, string providerKey) |
|
|
|
{ |
|
|
|
claims.Foreach((x, _) => RemoveClaim(x)); |
|
|
|
Logins.RemoveAll(x => x.LoginProvider == provider && x.ProviderKey == providerKey); |
|
|
|
} |
|
|
|
|
|
|
|
internal string? GetToken(string provider, string name) |
|
|
|
internal void RemoveRole(string role) |
|
|
|
{ |
|
|
|
return Tokens.FirstOrDefault(x => x.LoginProvider == provider && x.Name == name)?.Value; |
|
|
|
Roles.Remove(role); |
|
|
|
} |
|
|
|
|
|
|
|
internal void AddToken(string provider, string name, string value) |
|
|
|
internal void RemoveClaim(Claim claim) |
|
|
|
{ |
|
|
|
Tokens.Add(new UserTokenInfo { LoginProvider = provider, Name = name, Value = value }); |
|
|
|
Claims.RemoveAll(x => x.Type == claim.Type && x.Value == claim.Value); |
|
|
|
} |
|
|
|
|
|
|
|
internal void RemoveClaims(IEnumerable<Claim> claims) |
|
|
|
{ |
|
|
|
claims.Foreach((x, _) => RemoveClaim(x)); |
|
|
|
} |
|
|
|
|
|
|
|
internal void RemoveToken(string provider, string name) |
|
|
|
@ -94,11 +94,11 @@ namespace Squidex.Domain.Users.MongoDb |
|
|
|
AddClaim(newClaim); |
|
|
|
} |
|
|
|
|
|
|
|
internal void SetToken(string loginProider, string name, string value) |
|
|
|
internal void ReplaceToken(string provider, string name, string value) |
|
|
|
{ |
|
|
|
RemoveToken(loginProider, name); |
|
|
|
RemoveToken(provider, name); |
|
|
|
|
|
|
|
AddToken(loginProider, name, value); |
|
|
|
AddToken(provider, name, value); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|