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.

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
Automatic diff as part of commit; lint not applicable.
Unit
Automatic diff as part of commit; unit tests not applicable.