UserAccessLevels¶
UserAccessLevels encodes the authorization tiers that clsPolicySecurity uses to decide whether a caller may view a policy and which demo tiers require masked data. The ordinal spacing is deliberate: the real-user tiers drive the access matrix in BR-VP-005, and each demo tier sits 50 points below its non-demo counterpart so demo-user handling can be recognized with a simple level comparison in the masking flow described by BR-VP-010.
Purpose¶
- Provide a normalized access-tier vocabulary for
clsPolicySecurity.ConvertUserTypeToUserAccessLevelandIsPolicyValidForUser. - Separate real and demo user categories while keeping their relative ordering aligned for shared authorization and masking logic.
- Give policy-security code a stable numeric ordering for matrix-style checks across employees, auditors, consultants, agents, groups, policyholders, and quick-file users.
Context¶
- Namespace:
SAIF.Business.View.Policy - Assembly/package:
SAIF.Business.View.Policy(embedded)
Public members¶
| Member | Signature | Purpose |
|---|---|---|
| SAIFEmployee | SAIFEmployee = 1000 |
Highest-trust internal SAIF employee tier; policy access is allowed directly under the matrix in BR-VP-005. |
| Auditor | Auditor = 900 |
External or audit-role tier evaluated through the auditor-specific 60-day access window in BR-VP-006. |
| DemoAuditor | DemoAuditor = 850 |
Demo equivalent of the auditor tier; participates in auditor rules while receiving masked data under BR-VP-010. |
| Losscontrol | Losscontrol = 800 |
Loss-control consultant tier evaluated by consultant-prefix matching under BR-VP-007. |
| DemoLossControl | DemoLossControl = 750 |
Demo loss-control tier that follows consultant matching, including the demo-specific identity rule in BR-VP-008. |
| Agent | Agent = 700 |
Agent tier validated against the agent's accessible policy list under the BR-VP-005 policy-security matrix. |
| DemoAgent | DemoAgent = 650 |
Demo equivalent of the agent tier; authorization follows agent rules while returned data is masked per BR-VP-010. |
| Group | Group = 600 |
Group-user tier checked through group-policy membership lookup in the policy-security matrix. |
| DemoGroup | DemoGroup = 550 |
Demo equivalent of the group tier, preserving group-based authorization while enabling masked output. |
| Policyholder | Policyholder = 500 |
Policyholder tier validated against the policyholder's accessible policies in the authorization matrix. |
| DemoPolicyholder | DemoPolicyholder = 450 |
Demo equivalent of the policyholder tier; retains policyholder-style authorization with masked returned data. |
| QuickFileUser | QuickFileUser = 300 |
Lowest explicitly enumerated tier, used for quick-file access decisions in the same authorization matrix. |
Behavioral notes¶
clsPolicySecurityconverts user types into these ordinals before evaluating policy access under BR-VP-005.- The pattern of placing each demo tier 50 points below the corresponding real tier enables shared comparisons for demo detection and masking behavior in BR-VP-010.*
- These values are part of the library's security vocabulary; changing them would alter both authorization ordering and demo-tier recognition.
Constraints and usage notes¶
- Keep the documented ordinal values stable when maintaining compatibility with existing
clsPolicySecuritychecks. - Prefer comparing against the enum values rather than hard-coded numbers in consuming code.
Note: Statements marked with * were inferred from code structure, naming conventions, or contextual evidence where direct confirmation was not available in source artifacts. Statements marked with ** could not be confirmed; treat as unknown until verified.
Sources¶
SAIF.Business.View.Policy/clsPolicyData.vb