Database-enforced entitlements
Program scope, purpose grants and masking hold on every read path, including direct API calls.
Done when: The policy self-test passes for 6 personas x 4 purposes x 5 datasets.
Not affiliated with JPMorgan Chase.
Independent work by Kaushal Khodifad. JPMorgan Chase is named only to anchor the domain; it has not reviewed, endorsed or supplied anything here. Cardholder data is synthetic; market context is public and cited.
Strategy
Milestones, each with the outcome it delivers and the test that says it is done.
Running in this product today
Program scope, purpose grants and masking hold on every read path, including direct API calls.
Done when: The policy self-test passes for 6 personas x 4 purposes x 5 datasets.
The partner gets program insight without one cardholder row leaving the bank.
Done when: No cell under 25 cardholders ever returns a value to the partner.
Analysts ask in plain English; answers respect the same entitlements.
Done when: The model never writes SQL that reaches the database; every answer runs on masked views.
Every access leaves a record an examiner can verify.
Done when: Altering any logged row breaks chain verification at that row.
Being built
Policies read signed identity claims; persona switching goes away.
Done when: A request without a valid signed claim sees nothing.
Planned
A time-bound, approved unmask replaces standing privilege.
Done when: A granted exception expires within 15 minutes without user action.