Configurer Okta Workflows pour un opérateur téléphonique externe

Ce cas d'utilisation Okta Workflows tombe dans la zone jaune comme décrit dans les Limites système de Workflows. Il requiert une attention particulière à l'architecture et aux bonnes pratiques, car il comporte un risque plus élevé de se heurter aux limites du système ou d'autres mises en garde.

Utilisez l'API Okta à la place. Consultez la documentation Références Crochet incorporé de téléphonie destinée aux développeurs.

Cette tâche explique comment créer un flux dans Okta Workflows pour envoyer le code d'accès à usage unique (OTP) à vos utilisateurs finaux via l'opérateur téléphonique de votre choix. Le flux ressemble à ceci :

Avant de commencer

  • Consultez la documentation Téléphonie pour comprendre les exigences réglementaires, la fraude téléphonique et les considérations techniques.
  • Configurez Okta Workflows.
  • Configurez l'opérateur téléphonique de votre choix. Prenez note des informations suivantes :
    • Compte SID
    • Jeton d'authentification
    • Numéro de téléphone
    • URL du message SMS pour envoyer des requêtes POST. Par exemple, l'URL Twilio est la suivante :

      https://api.twilio.com/2010-04-01/Accounts/{yourtwilioaccountid}/Messages.json

      Dans cet exemple, {yourtwilioaccountid} est l'identifiant de votre compte Twilio.

Créer un flux

  1. Dans la Admin Console, accédez à WorkflowsConsole des workflows.
  2. Dans la console Workflows, cliquez sur FluxNouveau flux.

Créer la carte d'événement du point de terminaison de l'API

  1. Cliquez sur Ajouter un événement. Recherchez et sélectionnez l'application Okta pour le point de terminaison de l'API.
  2. Dans la fenêtre Paramètres du point de terminaison de l'API, définissez le Niveau de sécurité sur Sécurisé avec le jeton client.
  3. Laissez le champ Jeton client vide, puis cliquez sur Fermer.
  4. Dans la section Corps, créez les champs suivants. Cliquez sur le menu déroulant du champ pour modifier son type.
Champ Type

données

Objet

> userProfile

Objet

> > userId

Texte

> messageProfile

Objet

> > msgTemplate

Texte

> > phoneNumber

Texte

> > otp

Texte

Créer une carte de fonction Composer

  1. Cliquez sur Ajouter une fonction. Recherchez et sélectionnez la carte de fonction Composer.
  2. Dans la carte, saisissez le texte suivant : To=phoneNumber&From={yourphonenumber}&Body=msgTemplate
  3. Pour mapper les champs phoneNumber et msgTemplate, faites glisser et déposez ces champs depuis la carte d'événement Point de terminaison de l'API.
  4. Remplacez {yourphonenumber} par votre numéro de téléphone, y compris l'indicatif du pays. Il s'agit du numéro que votre opérateur téléphonique vous a affecté.

Créer une carte de fonction Construire

  1. Cliquez sur Ajouter une fonction. Recherchez et ajoutez la carte de fonction Objet Construire.
  2. Dans la carte, ajoutez les champs de texte de saisie suivants : Accepter et Content-Type.
  3. Saisissez ces valeurs dans les champs :
    • Accepter : application/json
    • Content-Type: application/x-www-form-urlencoded

Créer une carte de fonction En cas d'erreur

  1. Cliquez sur Ajouter une fonction. Recherchez et sélectionnez la carte de fonction En cas d'erreur.
  2. Assurez-vous que la carte de fonction En cas d'erreur est en mode Essayer.

À l'intérieur de cette carte, créez les cartes suivantes.

Créer une carte Connecteur API

  1. Dans le menu + , cliquez sur l'icône de nuage. Recherchez et sélectionnez la carte Connecteur API.
  2. Sélectionnez le type Publier.
  3. Dans la carte Publier, saisissez l'URL du SMS pour votre opérateur téléphonique.
  4. Faites glisser et déposez le champ Sortie de la carte de fonction Construire vers le champ Demande En-têtes.
  5. Faites glisser et déposez le champ Sortie de la carte de fonctionComposer vers le champ Demande Corps.
  6. Dans le champ Demande Corps, créez le champ de texte sid.

Créer une carte de fonction Composer pour réussir

  1. À côté de la carte Publier, dans le menu +, cliquez sur l'icône de la calculatrice. Recherchez et sélectionnez la carte de fonction Composer.
  2. Dans la carte, saisissez le code suivant :

    Copier
    {
    "commands":[
    {
    "type":"com.okta.telephony.action",
    "value":[
    {
    "status":"SUCCESSFUL",
    "provider":"<YOURPROVIDER> ",
    "transactionId":"sid"
    }
    ] [] }
    [] ] }
    ] ]
    }
  3. Remplacez <YOURPROVIDER> par le nom de votre opérateur téléphonique, comme Twilio.
  4. Faites glisser et déposez le champ sid depuis la carte Publier.
  5. Cliquez sur le menu déroulant du champ Sortie et renommez-le Réussite.
  6. Cliquez sur Afficher sorties pour la carte En cas d'erreur.
  7. Créez un champ d'objet de sortie appelé Réponse.
  8. Dans ce champ Réponse, faites glisser et déposez le champ Réussite depuis la carte Composer.

Ajouter des champs d'erreur

  1. Dans la carte En cas d'erreur, basculez le mode Essai vers le mode En cas d'erreur.
  2. Dans la sortie Erreur, créez les champs suivants. Cliquez sur le menu déroulant du champ pour modifier son type.
Champ Type

body

Objet

> code

Texte

> status

Texte

> message

Texte

Créer une carte de fonction Composer pour l'erreur

  1. À côté des champs de résultat Erreur, dans le menu +, cliquez sur l'icône de la calculatrice. Recherchez et sélectionnez la carte de fonction Composer.
  2. Dans la carte, saisissez le code suivant :

    Copier
    {
    "error":{
    "errorSummary":"Failed to delivery SMS to phoneNumber",
    "errorCauses":[
    {
    "errorSummary":"Cultn't delivery OTP",
    "reason":"message"
    }
    ]
    }
    }
  3. Faites glisser et déposez le champ phoneNumber depuis la carte d'événement Point de terminaison API.
  4. Faites glisser et déposez le champmessagede la sortie Erreur.
  5. Cliquez sur le menu déroulant du champ Sortie pour le renommer Erreur.
  6. Faites glisser et déposez le champ Erreur sous la section Réponse de la carte En cas d'erreur.

La carte dans le mode En cas d'erreur ressemble à ceci :

La carte de fonction En cas d'erreur est maintenant terminée.

Créer une carte Retour brut

  1. Dans le flux, cliquez sur Ajouter une fonction. Recherchez et sélectionnez la carte de fonction Retour brut.
  2. Faites glisser et déposez le champ Sortie de la carte Construction vers le champ En-têtes.
  3. Faites glisser et déposez le champ Réponse de la carte En cas d'erreur vers le champ Corps.
  4. Enregistrez le flux et activez-le.

Copier les informations pour le crochet incorporé de téléphonie

  1. Accédez à la carte d'événement Point de terminaison API, puis cliquez sur l'icône </> pour ouvrir les paramètres Point de terminaison API.
  2. Dans la boîte de dialogue des paramètres, copiez les informations suivantes : Invoquer URL, Aliaset Jeton client. Vous aurez besoin de ces informations lors de la prochaine étape de la création d'un crochet incorporé de téléphonie.

Étape suivante

Configurez le fournisseur de téléphonie via un appel incorporé