Créer un flux d’utilisateur d’inscription et de connexion

Effectué

Exercice : Créer un flux d’utilisateur d’inscription et de connexion

Un flux d’utilisateur définit la série d’étapes d’inscription que les clients suivent et les méthodes de connexion qu’ils peuvent utiliser (par exemple, e-mail et mot de passe, codes secrets à usage unique ou comptes sociaux Google ou Facebook). Vous pouvez également collecter des informations auprès des clients pendant l’inscription en sélectionnant des attributs utilisateur intégrés ou en ajoutant vos propres attributs personnalisés. Vous pouvez créer plusieurs flux utilisateur si vous proposez plusieurs applications aux clients.

Remarque

Vous devrez avoir au moins le rôle d’annuaire Administrateur de flux d’utilisateurs ID externe pour créer des flux d’utilisateurs.

Avez-vous des commentaires à formuler ? Faites-nous savoir comment se déroule votre projet de preuve de concept. Nous aimerions connaître votre opinion.

  1. Pour créer un flux d’utilisateur d’inscription et de connexion, connectez-vous au Centre d’administration Microsoft Entra et accédez à Identité>Identités externes.

    Capture d’écran de la page d’accueil du centre d’administration Microsoft Entra avec un élément de navigation gauche intitulé Identités externes mis en évidence.

  2. Dans le menu, sélectionnez Flux d’utilisateurs. Sélectionnez ensuite Nouveau flux d’utilisateur.

    Capture d’écran de la page d’accueil du centre d’administration Microsoft Entra avec un élément de navigation gauche intitulé Identités externes mis en évidence.

  3. Dans la page Créer, entrez un Nom pour le flux utilisateur (par exemple, « SignUpSignIn »). Ensuite, sous Fournisseurs d’identité, cochez la case Comptes Email, puis sélectionnez l’une de ces options. Si vous avez configuré d’autres fournisseurs d’identité, vous pouvez les sélectionner.

    Capture d’écran du panneau Créer dans Flux d’utilisateurs dans Identités externes qui met en évidence le nom du nouveau flux d’utilisateur.

  4. Sous Attributs utilisateur, choisissez les attributs à collecter auprès de l’utilisateur pendant l’inscription. Sélectionnez Afficher plus pour choisir dans la liste complète des attributs, notamment Titre du travail, Nom complet et Code postal, etc. Ensuite, sélectionnez Créer pour créer le flux d’utilisateur.

    Capture d’écran du panneau Créer dans Flux d’utilisateurs dans Identités externes qui met en évidence les éléments cochés Ville, Pays ou Région et Nom complet en tant qu’attributs à collecter lors de l’inscription, ainsi que le lien Afficher plus en dessous pour obtenir des options supplémentaires. Le bouton en bas, intitulé Créer, est mis en évidence.

  5. Dans la liste, sélectionnez le flux d’utilisateur que vous avez créé.

    Capture d’écran du panneau Flux d’utilisateurs dans Identités externes avec un flux d’utilisateur intitulé SignUpSignIn mis en évidence dans la liste de grilles.

  6. Les étapes suivantes activent l’expérience d’inscription et de connexion (le flux d’utilisateur) pour les utilisateurs qui visitent votre application. Dans le menu de gauche, sous Utiliser, sélectionnez Applications.

    Capture d’écran du panneau Vue d’ensemble du flux d’utilisateur pour le flux d’utilisateur intitulé SignUpSignIn, où l’élément de navigation de gauche intitulé Applications est mis en évidence.

  7. Sélectionnez Ajouter une application.

    Capture d’écran du panneau Applications pour le flux d’utilisateur intitulé SignUpSignIn qui met en évidence un bouton de la barre d’outils intitulé Ajouter une application.

  8. Sélectionnez l’application dans la liste. Vous pouvez aussi utiliser la zone de recherche pour trouver l’application, puis la sélectionner. Choisissez Sélectionner.

    Capture d’écran du volet Sélectionner une application qui s’ouvre à droite et met en évidence une application sélectionnée intitulée Woodgrove Groceries. Le bouton en bas, intitulé Sélectionner, est mis en évidence.

  9. L’application est maintenant liée au flux d’utilisateurs. Sélectionnez Exécuter le flux d’utilisateurs pour afficher un aperçu de l’expérience.

    Capture d’écran d’une application intitulée Woodgrove Groceries affichée en tant qu’application associée au flux d’utilisateur intitulé SignUpSignIn. A bouton appelé « Exécuter le flux d’utilisateurs » est mis en surbrillance.

  10. Dans le volet Exécuter le flux d’utilisateurs qui s’ouvre à droite, vérifiez que l’Application et l’URL de réponse sont sélectionnées. Sélectionnez ensuite Exécuter le flux d’utilisateurs.

    Capture d’écran du volet Exécuter le flux d’utilisateurs qui s’ouvre à droite avec les champs Application et URL de réponse mis en surbrillance. A bouton appelé Exécuter le flux d’utilisateurs est également mis en surbrillance en bas.

  11. Bravo ! Vous avez correctement créé un flux d’utilisateurs et lié une application.

    Conseil

    Vous pouvez toujours utiliser le bouton Exécuter le flux d’utilisateurs pour afficher un aperçu de l’expérience de connexion. Lorsque les utilisateurs se connectent au site web de l’épicerie, ils passent par l’expérience de connexion et d’inscription configurée dans le flux d’utilisateur.

    Capture d’écran de l’aperçu du flux de connexion.

1. Créer un flux utilisateur

Pour créer un flux d’utilisateur, vous créez un objet flux d’événements d’authentification qui est du type spécifié dans le corps de la requête.

POST https://graph.microsoft.com/beta/identity/authenticationEventsFlows
{
    "@odata.context": "https://graph.microsoft.com/beta/$metadata#identity/authenticationEventsFlows/$entity",
    "@odata.type": "#microsoft.graph.externalUsersSelfServiceSignUpEventsFlow",
    "displayName": "Default sign-up and sign-in",
    "description": "Woodgrove default sign-up and sign-in flow",
    "priority": 500,
    "conditions": {
        "applications": {
            "includeAllApplications": false
        }
    },
    "onInteractiveAuthFlowStart": {
        "@odata.type": "#microsoft.graph.onInteractiveAuthFlowStartExternalUsersSelfServiceSignUp",
        "isSignUpAllowed": true
    },
    "onAuthenticationMethodLoadStart": {
        "@odata.type": "#microsoft.graph.onAuthenticationMethodLoadStartExternalUsersSelfServiceSignUp",
        "identityProviders": [
            {
                "@odata.type": "#microsoft.graph.builtInIdentityProvider",
                "id": "EmailPassword-OAUTH"
            }
        ]
    },
    "onAttributeCollection": {
        "@odata.type": "#microsoft.graph.onAttributeCollectionExternalUsersSelfServiceSignUp",
        "accessPackages": [],
        "attributeCollectionPage": {
            "customStringsFileId": null,
            "views": [
                {
                    "title": null,
                    "description": null,
                    "inputs": [
                        {
                            "attribute": "email",
                            "label": "Email Address",
                            "inputType": "text",
                            "defaultValue": null,
                            "hidden": true,
                            "editable": false,
                            "writeToDirectory": true,
                            "required": true,
                            "validationRegEx": "^[a-zA-Z0-9.!#$%&’'*+/=?^_`{|}~-]+@[a-zA-Z0-9-]+(?:\\.[a-zA-Z0-9-]+)*$",
                            "options": []
                        },
                        {
                            "attribute": "displayName",
                            "label": "Display Name",
                            "inputType": "text",
                            "defaultValue": null,
                            "hidden": false,
                            "editable": true,
                            "writeToDirectory": true,
                            "required": true,
                            "validationRegEx": "^.*",
                            "options": []
                        },
                        {
                            "attribute": "country",
                            "label": "Country/Region",
                            "inputType": "radioSingleSelect",
                            "defaultValue": null,
                            "hidden": false,
                            "editable": true,
                            "writeToDirectory": true,
                            "required": false,
                            "validationRegEx": "^.*",
                            "options": [
                                {
                                    "label": "Australia",
                                    "value": "au"
                                },
                                {
                                    "label": "Spain",
                                    "value": "es"
                                },
                                {
                                    "label": "United States",
                                    "value": "us"
                                }
                            ]
                        },
                        {
                            "attribute": "city",
                            "label": "City",
                            "inputType": "text",
                            "defaultValue": null,
                            "hidden": false,
                            "editable": true,
                            "writeToDirectory": true,
                            "required": false,
                            "validationRegEx": "^.*",
                            "options": []
                        }
                    ]
                }
            ]
        },
        "attributes": [
            {
                "id": "email"
            },
            {
                "id": "city"
            },
            {
                "id": "country"
            },
            {
                "id": "displayName"
            }
        ]
    },
    "onUserCreateStart": {
        "@odata.type": "#microsoft.graph.onUserCreateStartExternalUsersSelfServiceSignUp",
        "userTypeToCreate": "member",
        "accessPackages": []
    }
}
1.1 Copier l’ID du flux d’utilisateur

À partir de la réponse, copiez la valeur de l’ID du flux d’utilisateur. Par exemple :

{
    "@odata.context": "https://graph.microsoft.com/beta/$metadata#identity/authenticationEventsFlows/$entity",
    "@odata.type": "#microsoft.graph.externalUsersSelfServiceSignUpEventsFlow",
    "id": "aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb",
    "displayName": "Default sign-up and sign-in1",
    "description": "Woodgrove default sign-up and sign-in flow",
    ...
}      

2. Ajouter votre application au flux d’utilisateur

Pour ajouter ou lier une application à un flux d’utilisateur, utilisez la requête Microsoft Graph suivante. Remplacez {user-flow-ID} par votre ID de flux d’utilisateur. Remplacez {app-ID} par votre ID d’application.

POST https://graph.microsoft.com/beta/identity/authenticationEventsFlows/{user-flow-ID}/conditions/applications/includeApplications
{
    "@odata.type": "#microsoft.graph.authenticationConditionApplication",
    "appId": "{app-ID}"
}