Zbieraj atrybuty użytkownika podczas rejestracji
Ćwiczenie — zbieranie atrybutów użytkownika podczas rejestracji
Atrybuty użytkownika to wartości zbierane od użytkownika podczas rejestracji samoobsługowej. W ustawieniach przepływu użytkownika możesz wybrać spośród zestawu wbudowanych atrybutów użytkownika, które chcesz zbierać od klientów. Możesz również utworzyć niestandardowe atrybuty użytkownika i dodać je do przepływu użytkownika podczas rejestracji. Na stronie rejestracji użytkownik wprowadza informacje i jest przechowywany z profilem w katalogu. Na potrzeby witryny internetowej sklepów spożywczych użyjemy kombinacji wbudowanych atrybutów i atrybutu niestandardowego nazywanego specjalną dietą.
Uwaga
Aby skonfigurować atrybuty użytkownika do zbierania atrybutów podczas rejestracji, potrzebna będzie co najmniej rola katalogu atrybutu przepływu użytkownika zewnętrznego identyfikatora użytkownika.
Czy masz opinię? Daj nam znać, jak będzie przebiegał projekt weryfikacji koncepcji. Z przyjemnością poznamy opinie użytkowników.
Zaczynamy od utworzenia specjalnego atrybutu użytkownika niestandardowego diety . W tym celu zaloguj się do centrum administracyjnego firmy Microsoft Entra i przejdź do pozycji Zewnętrzne tożsamości>— omówienie. Następnie wybierz pozycję Atrybuty użytkownika niestandardowego.
Lista zawiera wszystkie atrybuty użytkownika dostępne w dzierżawie, w tym wszystkie niestandardowe atrybuty użytkownika, które zostały utworzone. Kolumna Typ atrybutu wskazuje, czy atrybut jest wbudowany, czy niestandardowy. Wybierz pozycję Dodaj , aby dodać nowy atrybut.
W okienku Dodawanie atrybutu wprowadź nazwę atrybutu niestandardowego. Na przykład SpecialDiet. W obszarze Typ danych wybierz pozycję Ciąg. W opisie wprowadź opis atrybutu niestandardowego do użytku wewnętrznego. Ten opis nie jest widoczny dla użytkownika.
Po dodaniu niestandardowego atrybutu użytkownika do dzierżawy przejdź do dołączania niestandardowego atrybutu użytkownika w przepływie tworzenia konta. Przejdź do sekcji Identity External Identities User flows (Przepływy> użytkownika tożsamości>zewnętrznych tożsamości). Następnie wybierz przepływ użytkownika z listy.
Wybierz pozycję Atrybuty użytkownika. Lista zawiera wszystkie niestandardowe atrybuty użytkownika zdefiniowane zgodnie z opisem w poprzedniej sekcji. Na przykład nowa aplikacja SpecialDiet jest teraz wyświetlana na liście. Wybierz wszystkie atrybuty, które chcesz zebrać od użytkownika podczas rejestracji, a następnie wybierz pozycję Zapisz.
W ostatnim kroku skonfigurujesz układ strony rejestracji. W obszarze Układy strony można wskazać, które atrybuty są wymagane i rozmieścić wyświetlaną kolejność. Możesz również edytować etykiety atrybutów, tworzyć przyciski radiowe lub pola wyboru itd. W naszej witrynie internetowej artykułów spożywczych dodamy etykietę do atrybutu o nazwie SpecialDiet. W obszarze Dostosuj wybierz pozycję Układy stron. Zostaną wyświetlone atrybuty wybrane do zebrania. Edytuj etykietę dla dowolnego atrybutu, wybierając wartość w kolumnie Etykieta i modyfikując tekst.
Dobra robota! Dodano atrybut niestandardowy do dzierżawy, dodano atrybut niestandardowy do przepływu użytkownika, a następnie dodano etykietę do atrybutu.
1. Tworzenie atrybutu niestandardowego
Aby utworzyć atrybut niestandardowy, uruchom następujące żądanie programu Microsoft Graph.
POST https://graph.microsoft.com/beta/identity/userFlowAttributes
{
"displayName": "SpecialDiet",
"description": "Customer's special diet",
"dataType": "string"
}
1.1 Kopiowanie atrybutu niestandardowego
Z odpowiedzi skopiuj wartość identyfikatora atrybutu niestandardowego. Na przykład:
{
"@odata.context": "https://graph.microsoft.com/beta/$metadata#identity/userFlowAttributes/$entity",
"id": "extension_a0a0a0a0-bbbb-cccc-dddd-e1e1e1e1e1e1_SpecialDiet",
"displayName": "SpecialDiet",
"description": "Customer's special diet",
"userFlowAttributeType": "custom",
"dataType": "string"
}
2. Dodawanie atrybutu do przepływu użytkownika
Aby dodać atrybut do przepływu użytkownika, uruchom poniższe żądanie programu Microsoft Graph. Zastąp element {user-flow-ID} identyfikatorem przepływu użytkownika. Zastąp element {attribute-ID} identyfikatorem atrybutu z poprzedniego kroku.
POST https://graph.microsoft.com/beta/identity/authenticationEventsFlows/{user-flow-ID}/microsoft.graph.externalUsersSelfServiceSignUpEventsFlow/onAttributeCollection/microsoft.graph.onAttributeCollectionExternalUsersSelfServiceSignUp/attributes/$ref
{
"@odata.id":"https://graph.microsoft.com/beta/identity/userFlowAttributes/{attribute-ID}"
}
Przykład
POST https://graph.microsoft.com/beta/identity/authenticationEventsFlows/{user-flow-ID}/microsoft.graph.externalUsersSelfServiceSignUpEventsFlow/onAttributeCollection/microsoft.graph.onAttributeCollectionExternalUsersSelfServiceSignUp/attributes/$ref
{
"@odata.id":"https://graph.microsoft.com/beta/identity/userFlowAttributes/{attribute-ID}"
}
3. (Opcjonalnie) Aktualizowanie układu strony
Zazwyczaj atrybut pojawia się w dolnej części strony rejestracji. Możesz zaktualizować układ strony rejestracji. W obszarze Układy strony można wskazać, które atrybuty są wymagane i rozmieścić kolejność wyświetlania. Możesz również edytować etykiety atrybutów, tworzyć przyciski radiowe lub pola wyboru itd.
W tym celu należy zaktualizować przepływ użytkownika. W treści żądania podaj tylko wartości właściwości, które mają zostać zaktualizowane. Istniejące właściwości, które nie są uwzględnione w treści żądania, utrzymują swoje poprzednie wartości lub stają się ponownie obliczane na podstawie zmian w innych wartościach właściwości.
Ostrzeżenie
Kolekcja danych wejściowych musi zawierać wszystkie atrybuty. Aby dodać lub usunąć atrybuty, pamiętaj, aby uwzględnić wszystkie inne atrybuty.
Zastąp element {user-flow-ID} identyfikatorem przepływu użytkownika. Zastąp element {attribute-ID} identyfikatorem atrybutu.
PATCH https://graph.microsoft.com/beta/identity/authenticationEventsFlows/{user-flow-ID}
{
"@odata.type": "#microsoft.graph.externalUsersSelfServiceSignUpEventsFlow",
"onAttributeCollection": {
"@odata.type": "#microsoft.graph.onAttributeCollectionExternalUsersSelfServiceSignUp",
"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": true,
"validationRegEx": "^.*",
"options": []
}, {
"attribute": "{attribute-ID}",
"label": "Special diet",
"inputType": "text",
"defaultValue": null,
"hidden": false,
"editable": true,
"writeToDirectory": true,
"required": false,
"validationRegEx": "^.*",
"options": []
}
]
}
]
}
}
}