RlsPolicySetDefinition

Classes > Nimblesite.DataProvider.Migration.Core > RlsPolicySetDefinition

Row-level security policy set attached to a table. When attached to ``, RLS is enabled on the table and each contained policy is materialised by the platform DDL generator.

public sealed record RlsPolicySetDefinition : IEquatable<RlsPolicySetDefinition>

Properties

Enabled

[YamlMember(DefaultValuesHandling = DefaultValuesHandling.Preserve)]
public bool Enabled { get; init; }

True when row-level security is enabled on the table. False produces a DisableRlsOperation when previously enabled.

Policies

public IReadOnlyList<RlsPolicyDefinition> Policies { get; init; }

Policies attached to the table.

Forced

[YamlMember(Alias = "forced")]
public bool Forced { get; init; }

True when FORCE ROW LEVEL SECURITY is set on the table. Postgres-only -- when forced, RLS additionally applies to the table owner. SQLite has no equivalent (its trigger emulation always applies). Implements GitHub issue #37.