IPolicySecurityDataProvider¶
This interface captures the policy facts that clsPolicySecurity.IsPolicyValidForUser reads from clsPolicyData: policy identity, secure-policy state, validity, agency ownership, and loss-control consultant identity. It appears to be an unfinished decoupling seam for the authorization logic, because the interface is declared beside clsPolicySecurity but no implementing type exists anywhere in this repository and the authorization methods still accept concrete clsPolicyData instances.**
Purpose¶
- Describe the minimum policy-security data needed to evaluate secure-policy, agent, agency, and consultant access checks.
- Make the intended authorization inputs explicit without requiring every caller to understand the full
clsPolicyDataobject graph.* - Represent a possible abstraction point for decoupling
clsPolicySecurityfromclsPolicyData, although no completed implementation was found in this repository.**
Context¶
- Namespace:
SAIF.Business.View.Policy - Assembly/package:
SAIF.Business.View.Policy(embedded)
Public members¶
| Member | Signature | Purpose |
|---|---|---|
PolicyNumber |
ReadOnly Property PolicyNumber As Decimal |
Supplies the policy identifier being authorized. |
IsSecurePolicy |
ReadOnly Property IsSecurePolicy As Boolean |
Indicates whether the policy should be treated as a SAIF-secured policy requiring the extra AD authorization check described by BR-VP-003.* |
IsValid |
ReadOnly Property IsValid As Boolean |
Indicates whether the target policy passed validation before user-access checks proceed, aligning with BR-VP-004.* |
AgentNumber |
ReadOnly Property AgentNumber As Decimal |
Supplies the agent number compared against the requesting user's identifier in the agent-access branch of BR-VP-005.* |
AgencySeqNum |
ReadOnly Property AgencySeqNum As Decimal |
Supplies the agency sequence number used as the alternate agent-access match in BR-VP-005.* |
LossControlConsultantID |
ReadOnly Property LossControlConsultantID As String |
Carries the stored consultant identifier used to determine whether a loss-control user is assigned to the policy.* |
LossControlConsultantName |
ReadOnly Property LossControlConsultantName As String |
Carries the consultant user-name value compared by the loss-control prefix rule in BR-VP-007 and BR-VP-008.* |
Behavioral notes¶
- Inline comments on the interface map each member back to the corresponding
clsPolicyDataproperty path, showing that the contract was derived from the concrete object currently passed into authorization. - No public method in this library accepts
IPolicySecurityDataProvider, and no implementation was found in the repository, so the abstraction is currently unverified beyond its declaration.** - The interface is declared inside
clsPolicySecurity.vbrather than in a separate contract file, reinforcing the conclusion that it was introduced to support local refactoring that did not complete.*
Constraints and usage notes¶
- Treat this interface as a declared but unused contract until an implementation or consumer is verified.
- Database-side authorization logic and any external implementation that may exist outside this repository remain unknown.**
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/clsPolicySecurity.vb