{"id":1016,"date":"2026-10-15T08:57:00","date_gmt":"2026-10-15T03:27:00","guid":{"rendered":"https:\/\/smppcenter.com\/kb\/?p=1016"},"modified":"2026-10-04T19:55:28","modified_gmt":"2026-10-04T14:25:28","slug":"google-authenticator-2fa-admins-users","status":"publish","type":"post","link":"https:\/\/smppcenter.com\/kb\/google-authenticator-2fa-admins-users\/","title":{"rendered":"Setting Up Google Authenticator 2FA for Admins and Users"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">Passwords leak. On a platform that can send millions of messages and move credit between accounts, that is not a small problem. Google Authenticator 2FA adds a 6 digit code on top of the password, and it costs you nothing to switch on.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Admin accounts first<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Do your own team before you do your customers.<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Go to the admin list and click <strong>Edit<\/strong> on the admin account.<\/li>\n\n\n\n<li>In the modal, click <strong>Google Authenticator<\/strong>. You land on the setup page.<\/li>\n\n\n\n<li>On the phone, open the Google Authenticator app and scan the QR code. The account appears with a rotating 6 digit code.<\/li>\n\n\n\n<li>Back on the <strong>Verify Google Authenticator<\/strong> page, type the current code and click <strong>Verify<\/strong>.<\/li>\n<\/ol>\n\n\n\n<p class=\"wp-block-paragraph\">That is it. From then on, that admin needs the password plus the code.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Every admin account should have this on. Admin accounts can change routing, move credit and see client traffic, so a leaked admin password is the worst case on your platform.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Enabling 2FA for users<\/h3>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Go to <strong>Users \u2192 Edit User \u2192 Global Attributes<\/strong>.<\/li>\n\n\n\n<li>Under <strong>OTP Login Settings<\/strong>, set <strong>Enable OTP Login<\/strong> to <strong>Yes<\/strong>.<\/li>\n\n\n\n<li>Save.<\/li>\n<\/ol>\n\n\n\n<p class=\"wp-block-paragraph\">The user then sees a <strong>2FA<\/strong> tab on the Security page of their panel, where they scan the QR code, enter the 6 digit code and verify.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Forcing everyone to use it<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">If you want it mandatory rather than optional:<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Go to <strong>Settings<\/strong> and open the <strong>OTP Verification<\/strong> tab.<\/li>\n\n\n\n<li>Set <strong>Force Users for Google Auth<\/strong> to <strong>Enabled<\/strong>.<\/li>\n<\/ol>\n\n\n\n<p class=\"wp-block-paragraph\">Users who have not set 2FA up get redirected until they finish the setup. Tell your customers before you flip this, otherwise your support queue fills up the same morning.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Shared logins<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Plenty of client accounts are shared by a team, which 2FA normally breaks. The practical workaround is for the user to save the QR code image when they set it up, so colleagues can scan the same code. Better still, give each person their own sub user, but that is a conversation, not a setting.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">When someone loses their phone<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Users cannot remove their own 2FA, which is the point. They raise it with you, and you do it:<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li><strong>Edit User \u2192 Global Attributes \u2192 OTP Login Settings<\/strong><\/li>\n\n\n\n<li>Click <strong>Delete Google Auth<\/strong>.<\/li>\n<\/ol>\n\n\n\n<p class=\"wp-block-paragraph\">They do not need to log out. The next page they open redirects them to the 2FA tab to set it up again.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Verify who you are talking to before you reset 2FA. A phone call from &#8220;the client&#8221; asking you to remove their second factor is exactly what an attacker would do.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Related articles<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li><a href=\"https:\/\/smppcenter.com\/kb\/security-monitoring-dashboard-blocked-ips\/\">Security Monitoring: How Automatic IP Blocking Protects Your Platform<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/smppcenter.com\/kb\/admin-roles-permissions\/\">Admin Roles and Permissions<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/smppcenter.com\/kb\/login-trails-attempts-logs\/\">Login Trails and Attempts Logs: Your Access Audit Trail<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/smppcenter.com\/kb\/faq\/can-i-enable-2-factor-authentication-with-otp-sms-for-a-user\/\">Can I enable 2 factor authentication with OTP SMS for a user?<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/smppcenter.com\/kb\/does-your-software-comes-with-otp-verification-for-users-registration-and-logins\/\">Does your software come with OTP verification for user registration and logins?<\/a><\/li>\n<\/ul>\n","protected":false},"excerpt":{"rendered":"<p>Turn on app based two factor login for your admin team and your customers, force it where you need to, and reset it when someone loses their phone.<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[391],"tags":[409,410,411,407,408],"class_list":["post-1016","post","type-post","status-publish","format-standard","hentry","category-security-access-control","tag-2fa","tag-admin-security","tag-force-2fa","tag-google-authenticator","tag-otp-login"],"_links":{"self":[{"href":"https:\/\/smppcenter.com\/kb\/wp-json\/wp\/v2\/posts\/1016","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/smppcenter.com\/kb\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/smppcenter.com\/kb\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/smppcenter.com\/kb\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/smppcenter.com\/kb\/wp-json\/wp\/v2\/comments?post=1016"}],"version-history":[{"count":0,"href":"https:\/\/smppcenter.com\/kb\/wp-json\/wp\/v2\/posts\/1016\/revisions"}],"wp:attachment":[{"href":"https:\/\/smppcenter.com\/kb\/wp-json\/wp\/v2\/media?parent=1016"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/smppcenter.com\/kb\/wp-json\/wp\/v2\/categories?post=1016"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/smppcenter.com\/kb\/wp-json\/wp\/v2\/tags?post=1016"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}