using ZB.MOM.WW.OtOpcUa.Configuration.Enums;
namespace ZB.MOM.WW.OtOpcUa.Configuration.Entities;
///
/// One ACL grant: an LDAP group gets a set of at a specific scope.
/// Generation-versioned per decision #130. See acl-design.md for evaluation algorithm.
///
public sealed class NodeAcl
{
public Guid NodeAclRowId { get; set; }
public long GenerationId { get; set; }
public required string NodeAclId { get; set; }
public required string ClusterId { get; set; }
public required string LdapGroup { get; set; }
public required NodeAclScopeKind ScopeKind { get; set; }
/// NULL when = ; otherwise the scoped entity's logical ID.
public string? ScopeId { get; set; }
/// Bitmask of . Stored as int in SQL.
public required NodePermissions PermissionFlags { get; set; }
public string? Notes { get; set; }
public ConfigGeneration? Generation { get; set; }
}