clsPolicyHeaderSecurityManager¶
clsPolicyHeaderSecurityManager is the policy-header security helper that determines which association types and association rows a principal may see. It owns the library's process-wide association-type and user-number caches and applies the row-level ownership filters used by the standard header provider.
Purpose¶
- Compute the association types available to the current principal.
- Filter header association rows for policyholder and agent ownership scenarios.
Context¶
- Namespace:
SAIF.Application.Policy.PolicyHeader - Assembly/package:
SAIF.Application.Policy
Public members¶
| Member | Signature | Purpose |
|---|---|---|
GetValidAssociationTypes |
Shared ReadOnly Property GetValidAssociationTypes(ByVal inDPI As IDataPortalInfo, ByVal inSecurityPrincipal As clsSecurityPrincipal) As IEnumerable(Of IPolicyAssociationType) |
Returns the association types the principal is authorized to see. |
FilterAssociationsByUserType |
Shared Function FilterAssociationsByUserType(ByVal inAssociations As IEnumerable(Of IPolicyHeaderAssociation), ByVal inSecurityPrincipal As clsSecurityPrincipal) As IEnumerable(Of IPolicyHeaderAssociation) |
Filters header association rows for policyholder and agent ownership rules. |
Behavioral notes¶
- The type caches the full association-type list and resolved user numbers in
Sharedfields. - Ownership filtering applies only to policyholders and agents; all other user types keep the incoming rows.
Constraints and usage notes¶
- A non-numeric user number raises an exception rather than returning an unfiltered set.
Sources¶
Application\SAIF.Application.Policy\PolicyHeader\clsPolicyHeaderSecurityManager.vb