Page MenuHomePhabricator

In Phortune, use actual merchant authority (not authority grants) to control account visibility
ClosedPublic

Authored by epriestley on Aug 16 2019, 3:18 PM.
Tags
None
Referenced Files
F15492932: D20716.id49397.diff
Sat, Apr 12, 7:48 PM
F15481642: D20716.id49433.diff
Tue, Apr 8, 10:17 PM
F15405149: D20716.id.diff
Tue, Mar 18, 10:28 AM
F15348052: D20716.diff
Mar 10 2025, 2:11 PM
F15333756: D20716.id49397.diff
Mar 8 2025, 4:34 AM
F15331792: D20716.id49433.diff
Mar 7 2025, 1:47 PM
F15331773: D20716.id.diff
Mar 7 2025, 1:33 PM
Unknown Object (File)
Feb 20 2025, 4:58 AM
Subscribers
None

Details

Summary

Depends on D20715. Ref T13366. See that task for discussion.

Replace the unreliable "grantAuthority()"-based check with an actual "can the viewer edit any merchant this account has a relationship with?" check.

This makes these objects easier to use from a policy perspective and makes it so that the Query alone can fully enforce permissions properly with no setup, so general infrastructure (like handles and transactions) works properly with Phortune objects.

Test Plan

Viewed merchants and accounts as users with no authority, direct authority on the account, and indirect authority via a merchant relationship.

Diff Detail

Repository
rP Phabricator
Lint
Lint Not Applicable
Unit
Tests Not Applicable