Secure your VoiceWorx App with Multi Factor Authentication

Objective

This document will demonstrate how to use the Custom Skill feature of the VoiceWorx platform with Multi-Factor Authentication (MFA) support.

Multi-Factor Authentication (MFA) Setup at VoiceWorx

VoiceWorx allows users to setup multi-factor authentication for their apps to secure their apps from accessed by unauthorized personnel.

What does MFA setup mean?

Let us assume that we have an app contact finder. Now, Our goal is to demonstrate the capability of the VoiceWorx platform to integrate with external platforms and perform CRUD operations against them via web API calls with support for MFA. In this Alexa Skill it is called “Contact Finder”. This Alexa app will look up and return a person’s number that is stored in the contacts database and is accessible via the contacts API endpoints in demo.voiceworx.ai. The skill will be protected via a pin code sent to the users that invoked the skill’s phone and email. The MFA prevents unauthorized personnel from accessing the information provided by the skill. When a contact is asked and user has not authenticated with a PIN code, a 4-digit code is sent to the users email and phone number. When the correct pin code is provided by the user while interacting with the skill, access is granted but the PIN code is valid for five minutes. If a user does not interact with the skill within 5 minutes, on next interaction, a PIN code is regenerated and resent to the users email and phone number.

For example, the user interaction for Contact Finder in Alexa Developer console is going to be like this:

MFA has be configured at two different levels:

  1. At Organization Level

  2. At Employee Level

a. MFA at Organization Level

1. Login to VoiceWorx as organization admin . Navigate to Organization menu under Administration menu in Administration section. Click on Update Organization.

2. In the resulting pop up, scroll down until you find the Require Multi factor Authentication checkbox. Check on Require Multi-Factor Authentication checkbox and click on update.

3. MFA is successfully applied at organization level.

b. MFA at Employee Level

1. Navigate to Profile in Account Setup menu.

2. Scroll down and check on Require Voice MFA.

Enable MFA at app Level

The final step you have to carry out is Enable Multi Factor Authentication (MFA) when you are going to publish you app. You can implement this to any app.

Go to Publish tab of the app you want to implement MFA for. Click on Add New Publishing. Out of multiple channels supported by VoiceWorx, only Amazon Alexa supports MFA at the time of this documentation

Fill the details as shown in screen shot below. Most important, make sure to check on Enable MFA Support.

Save and then publish the App. Select the LWA account you want to publish the app to; click on Publish to Alexa.

On success, you’ll be able to view following screen. Click on Go To Alexa Skill button to go to Amazon Alexa developer console and test the skill.

Now test the app in developer console. You’ll be welcomed with the welcome message set in publish profile. On invoking intent with the utterance, you’ll receive a 3 digit pin in your email, like this:

Provide the pin number and the intent shall provide you with the result.

Congratulations!

You have successfully completed a Secure your VoiceWorx Skill with Multi-Factor Authentication.

Last updated