Skip to content

Class SandboxPolicy

Namespace: DotBoxD.Kernels
Assembly: DotBoxD.Kernels.dll

public sealed record SandboxPolicy : IEquatable<SandboxPolicy>

objectSandboxPolicy

IEquatable<SandboxPolicy>

object.Equals(object?), object.Equals(object?, object?), object.GetHashCode(), object.GetType(), object.ReferenceEquals(object?, object?), object.ToString()

SandboxPolicy(string, SandboxEffect, IReadOnlyList<CapabilityGrant>, ResourceLimits, bool, DateTimeOffset?, ulong?, IReadOnlySet<string>?)

Section titled “ SandboxPolicy(string, SandboxEffect, IReadOnlyList<CapabilityGrant>, ResourceLimits, bool, DateTimeOffset?, ulong?, IReadOnlySet<string>?)”
public SandboxPolicy(string PolicyId, SandboxEffect AllowedEffects, IReadOnlyList<CapabilityGrant> Grants, ResourceLimits ResourceLimits, bool Deterministic = false, DateTimeOffset? LogicalNow = null, ulong? RandomSeed = null, IReadOnlySet<string>? DeclaredOpaqueIdTypes = null)

PolicyId string

AllowedEffects SandboxEffect

Grants IReadOnlyList<CapabilityGrant>

ResourceLimits ResourceLimits

Deterministic bool

LogicalNow DateTimeOffset?

RandomSeed ulong?

DeclaredOpaqueIdTypes IReadOnlySet<string>?

public SandboxEffect AllowedEffects { get; init; }

SandboxEffect

Host-declared opaque-id brand type names this policy permits a module to use, in type or literal position. Empty by default (fail-closed): a module that references an opaque-id brand the host did not declare fails validation with E-POLICY-OPAQUE-ID.

public IReadOnlySet<string> DeclaredOpaqueIdTypes { get; init; }

IReadOnlySet<string>

public bool Deterministic { get; init; }

bool

public DateTimeOffset GrantClock { get; }

DateTimeOffset

public IReadOnlyList<CapabilityGrant> Grants { get; init; }

IReadOnlyList<CapabilityGrant>

public string Hash { get; }

string

public DateTimeOffset? LogicalNow { get; init; }

DateTimeOffset?

public string PolicyId { get; init; }

string

public ulong? RandomSeed { get; init; }

ulong?

public ResourceLimits ResourceLimits { get; init; }

ResourceLimits

public CapabilityGrant GetGrant(string capabilityId)

capabilityId string

CapabilityGrant

public bool GrantsCapability(string capabilityId)

capabilityId string

bool

public bool GrantsCapability(string capabilityId, DateTimeOffset now)

capabilityId string

now DateTimeOffset

bool

public bool TryGetGrant(string capabilityId, out CapabilityGrant grant)

capabilityId string

grant CapabilityGrant

bool