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
F15542760: D20716.diff
Fri, Apr 25, 6:42 PM
F15528410: D20716.id49433.diff
Tue, Apr 22, 11:01 AM
F15525676: D20716.diff
Mon, Apr 21, 4:04 PM
F15523757: D20716.id49433.diff
Mon, Apr 21, 3:27 AM
F15513407: D20716.id.diff
Thu, Apr 17, 6:54 PM
F15509078: D20716.diff
Wed, Apr 16, 9:23 AM
F15492932: D20716.id49397.diff
Sat, Apr 12, 7:48 PM
F15481642: D20716.id49433.diff
Tue, Apr 8, 10:17 PM
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