mirror of
https://github.com/fergalmoran/DnsServer.git
synced 2025-12-22 09:29:50 +00:00
code refactoring changes done.
This commit is contained in:
@@ -108,7 +108,7 @@ namespace DnsServerCore.Auth
|
|||||||
if (value.Length > 255)
|
if (value.Length > 255)
|
||||||
throw new ArgumentException("Group name length cannot exceed 255 characters.", nameof(Name));
|
throw new ArgumentException("Group name length cannot exceed 255 characters.", nameof(Name));
|
||||||
|
|
||||||
switch (_name?.ToLower())
|
switch (_name?.ToLowerInvariant())
|
||||||
{
|
{
|
||||||
case "everyone":
|
case "everyone":
|
||||||
case "administrators":
|
case "administrators":
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
/*
|
/*
|
||||||
Technitium DNS Server
|
Technitium DNS Server
|
||||||
Copyright (C) 2022 Shreyas Zare (shreyas@technitium.com)
|
Copyright (C) 2024 Shreyas Zare (shreyas@technitium.com)
|
||||||
|
|
||||||
This program is free software: you can redistribute it and/or modify
|
This program is free software: you can redistribute it and/or modify
|
||||||
it under the terms of the GNU General Public License as published by
|
it under the terms of the GNU General Public License as published by
|
||||||
@@ -131,7 +131,7 @@ namespace DnsServerCore.Auth
|
|||||||
string subItemName = bR.ReadShortString();
|
string subItemName = bR.ReadShortString();
|
||||||
Permission subItemPermission = new Permission(bR, authManager);
|
Permission subItemPermission = new Permission(bR, authManager);
|
||||||
|
|
||||||
_subItemPermissions.TryAdd(subItemName.ToLower(), subItemPermission);
|
_subItemPermissions.TryAdd(subItemName.ToLowerInvariant(), subItemPermission);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -167,7 +167,7 @@ namespace DnsServerCore.Auth
|
|||||||
|
|
||||||
public void SetSubItemPermission(string subItemName, User user, PermissionFlag flags)
|
public void SetSubItemPermission(string subItemName, User user, PermissionFlag flags)
|
||||||
{
|
{
|
||||||
Permission subItemPermission = _subItemPermissions.GetOrAdd(subItemName.ToLower(), delegate (string key)
|
Permission subItemPermission = _subItemPermissions.GetOrAdd(subItemName.ToLowerInvariant(), delegate (string key)
|
||||||
{
|
{
|
||||||
return new Permission(_section, key);
|
return new Permission(_section, key);
|
||||||
});
|
});
|
||||||
@@ -196,7 +196,7 @@ namespace DnsServerCore.Auth
|
|||||||
|
|
||||||
public void SetSubItemPermission(string subItemName, Group group, PermissionFlag flags)
|
public void SetSubItemPermission(string subItemName, Group group, PermissionFlag flags)
|
||||||
{
|
{
|
||||||
Permission subItemPermission = _subItemPermissions.GetOrAdd(subItemName.ToLower(), delegate (string key)
|
Permission subItemPermission = _subItemPermissions.GetOrAdd(subItemName.ToLowerInvariant(), delegate (string key)
|
||||||
{
|
{
|
||||||
return new Permission(_section, key);
|
return new Permission(_section, key);
|
||||||
});
|
});
|
||||||
@@ -211,7 +211,7 @@ namespace DnsServerCore.Auth
|
|||||||
|
|
||||||
public bool RemoveSubItemPermission(string subItemName, User user)
|
public bool RemoveSubItemPermission(string subItemName, User user)
|
||||||
{
|
{
|
||||||
return _subItemPermissions.TryGetValue(subItemName.ToLower(), out Permission subItemPermission) && subItemPermission.RemovePermission(user);
|
return _subItemPermissions.TryGetValue(subItemName.ToLowerInvariant(), out Permission subItemPermission) && subItemPermission.RemovePermission(user);
|
||||||
}
|
}
|
||||||
|
|
||||||
public bool RemovePermission(Group group)
|
public bool RemovePermission(Group group)
|
||||||
@@ -221,7 +221,7 @@ namespace DnsServerCore.Auth
|
|||||||
|
|
||||||
public bool RemoveSubItemPermission(string subItemName, Group group)
|
public bool RemoveSubItemPermission(string subItemName, Group group)
|
||||||
{
|
{
|
||||||
return _subItemPermissions.TryGetValue(subItemName.ToLower(), out Permission subItemPermission) && subItemPermission.RemovePermission(group);
|
return _subItemPermissions.TryGetValue(subItemName.ToLowerInvariant(), out Permission subItemPermission) && subItemPermission.RemovePermission(group);
|
||||||
}
|
}
|
||||||
|
|
||||||
public bool RemoveAllSubItemPermissions(User user)
|
public bool RemoveAllSubItemPermissions(User user)
|
||||||
@@ -257,7 +257,7 @@ namespace DnsServerCore.Auth
|
|||||||
|
|
||||||
public Permission GetSubItemPermission(string subItemName)
|
public Permission GetSubItemPermission(string subItemName)
|
||||||
{
|
{
|
||||||
if (_subItemPermissions.TryGetValue(subItemName.ToLower(), out Permission subItemPermission))
|
if (_subItemPermissions.TryGetValue(subItemName.ToLowerInvariant(), out Permission subItemPermission))
|
||||||
return subItemPermission;
|
return subItemPermission;
|
||||||
|
|
||||||
return null;
|
return null;
|
||||||
@@ -279,7 +279,7 @@ namespace DnsServerCore.Auth
|
|||||||
|
|
||||||
public bool IsSubItemPermitted(string subItemName, User user, PermissionFlag flag)
|
public bool IsSubItemPermitted(string subItemName, User user, PermissionFlag flag)
|
||||||
{
|
{
|
||||||
return _subItemPermissions.TryGetValue(subItemName.ToLower(), out Permission subItemPermission) && subItemPermission.IsPermitted(user, flag);
|
return _subItemPermissions.TryGetValue(subItemName.ToLowerInvariant(), out Permission subItemPermission) && subItemPermission.IsPermitted(user, flag);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void WriteTo(BinaryWriter bW)
|
public void WriteTo(BinaryWriter bW)
|
||||||
|
|||||||
@@ -102,7 +102,7 @@ namespace DnsServerCore.Auth
|
|||||||
{
|
{
|
||||||
Group group = authManager.GetGroup(bR.ReadShortString());
|
Group group = authManager.GetGroup(bR.ReadShortString());
|
||||||
if (group is not null)
|
if (group is not null)
|
||||||
_memberOfGroups.TryAdd(group.Name.ToLower(), group);
|
_memberOfGroups.TryAdd(group.Name.ToLowerInvariant(), group);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
@@ -118,8 +118,8 @@ namespace DnsServerCore.Auth
|
|||||||
|
|
||||||
internal void RenameGroup(string oldName)
|
internal void RenameGroup(string oldName)
|
||||||
{
|
{
|
||||||
if (_memberOfGroups.TryRemove(oldName.ToLower(), out Group renamedGroup))
|
if (_memberOfGroups.TryRemove(oldName.ToLowerInvariant(), out Group renamedGroup))
|
||||||
_memberOfGroups.TryAdd(renamedGroup.Name.ToLower(), renamedGroup);
|
_memberOfGroups.TryAdd(renamedGroup.Name.ToLowerInvariant(), renamedGroup);
|
||||||
}
|
}
|
||||||
|
|
||||||
#endregion
|
#endregion
|
||||||
@@ -133,11 +133,11 @@ namespace DnsServerCore.Auth
|
|||||||
case UserPasswordHashType.OldScheme:
|
case UserPasswordHashType.OldScheme:
|
||||||
using (HMAC hmac = new HMACSHA256(Encoding.UTF8.GetBytes(password)))
|
using (HMAC hmac = new HMACSHA256(Encoding.UTF8.GetBytes(password)))
|
||||||
{
|
{
|
||||||
return Convert.ToHexString(hmac.ComputeHash(Encoding.UTF8.GetBytes(_username))).ToLower();
|
return Convert.ToHexString(hmac.ComputeHash(Encoding.UTF8.GetBytes(_username))).ToLowerInvariant();
|
||||||
}
|
}
|
||||||
|
|
||||||
case UserPasswordHashType.PBKDF2_SHA256:
|
case UserPasswordHashType.PBKDF2_SHA256:
|
||||||
return Convert.ToHexString(Rfc2898DeriveBytes.Pbkdf2(Encoding.UTF8.GetBytes(password), _salt, _iterations, HashAlgorithmName.SHA256, 32)).ToLower();
|
return Convert.ToHexString(Rfc2898DeriveBytes.Pbkdf2(Encoding.UTF8.GetBytes(password), _salt, _iterations, HashAlgorithmName.SHA256, 32)).ToLowerInvariant();
|
||||||
|
|
||||||
default:
|
default:
|
||||||
throw new NotSupportedException();
|
throw new NotSupportedException();
|
||||||
@@ -178,7 +178,7 @@ namespace DnsServerCore.Auth
|
|||||||
if (_memberOfGroups.Count == 255)
|
if (_memberOfGroups.Count == 255)
|
||||||
throw new InvalidOperationException("Cannot add user to group: user can be member of max 255 groups.");
|
throw new InvalidOperationException("Cannot add user to group: user can be member of max 255 groups.");
|
||||||
|
|
||||||
_memberOfGroups.TryAdd(group.Name.ToLower(), group);
|
_memberOfGroups.TryAdd(group.Name.ToLowerInvariant(), group);
|
||||||
}
|
}
|
||||||
|
|
||||||
public bool RemoveFromGroup(Group group)
|
public bool RemoveFromGroup(Group group)
|
||||||
@@ -186,7 +186,7 @@ namespace DnsServerCore.Auth
|
|||||||
if (group.Name.Equals("everyone", StringComparison.OrdinalIgnoreCase))
|
if (group.Name.Equals("everyone", StringComparison.OrdinalIgnoreCase))
|
||||||
throw new InvalidOperationException("Access was denied.");
|
throw new InvalidOperationException("Access was denied.");
|
||||||
|
|
||||||
return _memberOfGroups.TryRemove(group.Name.ToLower(), out _);
|
return _memberOfGroups.TryRemove(group.Name.ToLowerInvariant(), out _);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void SyncGroups(IReadOnlyDictionary<string, Group> groups)
|
public void SyncGroups(IReadOnlyDictionary<string, Group> groups)
|
||||||
@@ -205,7 +205,7 @@ namespace DnsServerCore.Auth
|
|||||||
|
|
||||||
public bool IsMemberOfGroup(Group group)
|
public bool IsMemberOfGroup(Group group)
|
||||||
{
|
{
|
||||||
return _memberOfGroups.ContainsKey(group.Name.ToLower());
|
return _memberOfGroups.ContainsKey(group.Name.ToLowerInvariant());
|
||||||
}
|
}
|
||||||
|
|
||||||
public void WriteTo(BinaryWriter bW)
|
public void WriteTo(BinaryWriter bW)
|
||||||
@@ -228,7 +228,7 @@ namespace DnsServerCore.Auth
|
|||||||
bW.Write(Convert.ToByte(_memberOfGroups.Count));
|
bW.Write(Convert.ToByte(_memberOfGroups.Count));
|
||||||
|
|
||||||
foreach (KeyValuePair<string, Group> group in _memberOfGroups)
|
foreach (KeyValuePair<string, Group> group in _memberOfGroups)
|
||||||
bW.WriteShortString(group.Value.Name.ToLower());
|
bW.WriteShortString(group.Value.Name.ToLowerInvariant());
|
||||||
}
|
}
|
||||||
|
|
||||||
public override bool Equals(object obj)
|
public override bool Equals(object obj)
|
||||||
@@ -310,7 +310,7 @@ namespace DnsServerCore.Auth
|
|||||||
throw new ArgumentException("Username can contain only alpha numeric, '-', '_', or '.' characters.", nameof(Username));
|
throw new ArgumentException("Username can contain only alpha numeric, '-', '_', or '.' characters.", nameof(Username));
|
||||||
}
|
}
|
||||||
|
|
||||||
_username = value.ToLower();
|
_username = value.ToLowerInvariant();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -59,7 +59,7 @@ namespace DnsServerCore.Auth
|
|||||||
|
|
||||||
Span<byte> tokenBytes = stackalloc byte[32];
|
Span<byte> tokenBytes = stackalloc byte[32];
|
||||||
RandomNumberGenerator.Fill(tokenBytes);
|
RandomNumberGenerator.Fill(tokenBytes);
|
||||||
_token = Convert.ToHexString(tokenBytes).ToLower();
|
_token = Convert.ToHexString(tokenBytes).ToLowerInvariant();
|
||||||
|
|
||||||
_type = type;
|
_type = type;
|
||||||
_tokenName = tokenName;
|
_tokenName = tokenName;
|
||||||
|
|||||||
Reference in New Issue
Block a user