Interface IPiiVisibilityService
Determines which PII fields a user can see based on their IAL level and the configured view requirements. Used by the repository layer for query filtering.
public interface IPiiVisibilityService
Methods
GetVisibility(UserIalLevel)
Resolves visibility for a user without case context. Per-case-type view requirements degrade to IAL1 here (no cases = no case-derived reason to require elevated IAL), so callers that have access to the user's cases should prefer the overload that accepts them.
PiiVisibility GetVisibility(UserIalLevel userIalLevel)
Parameters
userIalLevelUserIalLevel
Returns
GetVisibility(UserIalLevel, IReadOnlyList<SummerEbtCase>)
Resolves visibility against the user's actual cases. Required for
per-case-type view requirements (e.g. address+view) to apply
correctly — without the cases, the "highest wins" rule has nothing
to resolve against.
PiiVisibility GetVisibility(UserIalLevel userIalLevel, IReadOnlyList<SummerEbtCase> cases)
Parameters
userIalLevelUserIalLevelcasesIReadOnlyList<SummerEbtCase>