HomePhabricator

Allow administrators to get a list of users who don't have MFA configured

Description

Allow administrators to get a list of users who don't have MFA configured

Summary:
Fixes T12400. Adds a "Has MFA" filter to People so you can figure out who you need to harass before turning on "require MFA".

When you run this as a non-admin, you don't currently actually hit the exception: the query just doesn't work. I think this is probably okay, but if we add more of these it might be better to make the "this didn't work" more explicit since it could be confusing in some weird edge cases (like, an administrator sending a non-administrator a link which they expect will show the non-administrator some interesting query results, but they actually just get no constraint). The exception is more of a fail-safe in case we make application changes in the future and don't remember this weird special case.

Test Plan:

  • As an administrator and non-administrator, used People and Conduit to query MFA, no-MFA, and don't-care-about-MFA. These queries worked for an admin and didn't work for a non-admin.
  • Viewed the list as an administrator, saw MFA users annotated.
  • Viewed config help, clicked link as an admin, ended up in the right place.

Screen Shot 2017-03-15 at 11.59.20 AM.png (1×1 px, 188 KB)

Screen Shot 2017-03-15 at 11.51.49 AM.png (1×1 px, 184 KB)

Reviewers: chad

Reviewed By: chad

Maniphest Tasks: T12400

Differential Revision: https://secure.phabricator.com/D17500