Table of Contents

Class PermissionDiffResult

Namespace
KadicAuth.Application.Permissions.Queries.GetPermissionDiff
Assembly
KadicAuth.Application.dll

Diferencia entre los permisos declarados en código y los que hay en la base de datos.

public sealed record PermissionDiffResult
Inheritance
object
PermissionDiffResult

Remarks

Sobre UnmappedModuleClasses: son las clases de permisos cuyos códigos no se están sembrando, con el motivo. Antes el escáner las saltaba en silencio; sus permisos no llegaban a la base de datos y además engordaban Orphaned, porque el diff calcula huérfanos restando lo que ve el escáner. Mientras esta lista no esté vacía, los huérfanos no son de fiar: contienen permisos válidos de módulos invisibles, y desactivarlos revocaría accesos que funcionan.

Constructors

PermissionDiffResult(List<PermissionSeedEntry>, List<PermissionDiffEntry>, List<PermissionOrphanEntry>, List<string>, List<UnassignedPermissionEntry>, List<UnmappedModuleClass>)

Diferencia entre los permisos declarados en código y los que hay en la base de datos.

public PermissionDiffResult(List<PermissionSeedEntry> ToInsert, List<PermissionDiffEntry> ToUpdate, List<PermissionOrphanEntry> Orphaned, List<string> MissingModules, List<UnassignedPermissionEntry> Unassigned, List<UnmappedModuleClass> UnmappedModuleClasses)

Parameters

ToInsert List<PermissionSeedEntry>
ToUpdate List<PermissionDiffEntry>
Orphaned List<PermissionOrphanEntry>
MissingModules List<string>
Unassigned List<UnassignedPermissionEntry>
UnmappedModuleClasses List<UnmappedModuleClass>

Remarks

Sobre UnmappedModuleClasses: son las clases de permisos cuyos códigos no se están sembrando, con el motivo. Antes el escáner las saltaba en silencio; sus permisos no llegaban a la base de datos y además engordaban Orphaned, porque el diff calcula huérfanos restando lo que ve el escáner. Mientras esta lista no esté vacía, los huérfanos no son de fiar: contienen permisos válidos de módulos invisibles, y desactivarlos revocaría accesos que funcionan.

Properties

MissingModules

public List<string> MissingModules { get; init; }

Property Value

List<string>

Orphaned

public List<PermissionOrphanEntry> Orphaned { get; init; }

Property Value

List<PermissionOrphanEntry>

ToInsert

public List<PermissionSeedEntry> ToInsert { get; init; }

Property Value

List<PermissionSeedEntry>

ToUpdate

public List<PermissionDiffEntry> ToUpdate { get; init; }

Property Value

List<PermissionDiffEntry>

Unassigned

public List<UnassignedPermissionEntry> Unassigned { get; init; }

Property Value

List<UnassignedPermissionEntry>

UnmappedModuleClasses

public List<UnmappedModuleClass> UnmappedModuleClasses { get; init; }

Property Value

List<UnmappedModuleClass>