Atrybuty profilu użytkownika
Profil użytkownika katalogu usługi Azure Active Directory B2C (Azure AD B2C) zawiera zestaw wbudowanych atrybutów, takich jak imię, nazwisko, miasto, kod pocztowy i numer telefonu. Profil użytkownika można rozszerzyć przy użyciu własnych danych aplikacji bez konieczności używania zewnętrznego magazynu danych.
Interfejs API programu Microsoft Graph obsługuje większość atrybutów, których można używać z platformą Azure W tym artykule opisano atrybuty profilu użytkownika obsługiwane przez usługę Azure AD B2C. Zwraca również uwagę na te atrybuty, których program Microsoft Graph nie obsługuje, a atrybuty interfejsu API programu Microsoft Graph, których nie należy używać w usłudze Azure AD B2C.
Ważne
Nie należy używać wbudowanych ani rozszerzeń atrybutów do przechowywania poufnych danych osobowych, takich jak poświadczenia konta, numery identyfikacyjne instytucji rządowych, dane posiadaczy kart, dane konta finansowego, informacje o opiece zdrowotnej lub poufne informacje w tle.
Można również zintegrować z systemami zewnętrznymi. Na przykład możesz użyć usługi Azure AD B2C do uwierzytelniania, ale delegować je do zewnętrznego zarządzania relacjami z klientami (CRM) lub bazy danych lojalności klientów jako autorytatywnego źródła danych klientów. Aby uzyskać więcej informacji, zobacz rozwiązanie profilu zdalnego.
Typ zasobu użytkownika Entra firmy Microsoft
Profil użytkownika katalogu usługi Azure AD B2C obsługuje atrybuty typu zasobu użytkownika wymienione w poniższej tabeli. Udostępnia następujące informacje o każdym atrybucie:
- Nazwa atrybutu używana przez usługę Azure AD B2C (a następnie nazwa programu Microsoft Graph w nawiasach, jeśli jest inna)
- Typ danych atrybutu
- Opis atrybutu
- Czy atrybut jest dostępny w witrynie Azure Portal
- Czy atrybut może być używany w przepływie użytkownika
- Czy atrybut może być używany w niestandardowych zasadach Microsoft Entra ID profilu technicznego i w której sekcji (<InputClaims, <OutputClaims> lub <PersistedClaims>>)
Nazwisko | Typ daty | opis | Dostępne w witrynie Azure Portal | Używane w przepływach użytkownika | Używane w zasadach niestandardowych |
---|---|---|---|---|---|
accountEnabled | Wartość logiczna | Czy konto użytkownika jest włączone, czy wyłączone: prawda , jeśli konto jest włączone, w przeciwnym razie wartość false. | Tak | Nie. | Utrwalone, wyjściowe |
ageGroup | String | Grupa wiekowa użytkownika. Możliwe wartości: null, Undefined, Minor, Adult, NotAdult. | Tak | Nie. | Utrwalone, wyjściowe |
alternativeSecurityId (Tożsamości) | String | Tożsamość pojedynczego użytkownika od zewnętrznego dostawcy tożsamości. | Nie | Nie. | Dane wejściowe, utrwalone, wyjściowe |
alternativeSecurityIds (Tożsamości) | alternatywna kolekcja securityId | Kolekcja tożsamości użytkowników od zewnętrznych dostawców tożsamości. | Nie | Nie. | Utrwalone, wyjściowe |
miejscowość | String | Miasto zamieszkania użytkownika. Maksymalna długość 128. | Tak | Tak | Utrwalone, wyjściowe |
consentProvidedForMinor | String | Czy udzielono zgody na pomocniczą. Dozwolone wartości: null, przyznane, odrzucone lub niewymagane. | Tak | Nie. | Utrwalone, wyjściowe |
kraj | String | Kraj/region zamieszkania użytkownika. Na przykład: USA lub Wielka Brytania. Maksymalna długość 128. | Tak | Tak | Utrwalone, wyjściowe |
createdDateTime | DateTime | Data utworzenia obiektu użytkownika. Tylko do odczytu. | Nie | Nie. | Utrwalone, wyjściowe |
creationType | String | Jeśli konto użytkownika zostało utworzone jako konto lokalne dla dzierżawy usługi Azure Active Directory B2C, wartość to LocalAccount lub nameCoexistence. Tylko do odczytu. | Nie | Nie. | Utrwalone, wyjściowe |
dateOfBirth | Data | Data urodzenia. | Nie | Nie. | Utrwalone, wyjściowe |
department | String | Nazwa działu, w którym działa użytkownik. Maksymalna długość 64. | Tak | Nie. | Utrwalone, wyjściowe |
displayName | String | Nazwa wyświetlana użytkownika. Maksymalna długość 256. <> znaki nie są dozwolone. | Tak | Tak | Utrwalone, wyjściowe |
facsimileTelephoneNumber1 | String | Numer telefonu firmowego faksu użytkownika. | Tak | Nie. | Utrwalone, wyjściowe |
givenName | String | Podana nazwa (imię) użytkownika. Maksymalna długość 64. | Tak | Tak | Utrwalone, wyjściowe |
jobTitle | String | Stanowisko użytkownika. Maksymalna długość 128. | Tak | Tak | Utrwalone, wyjściowe |
niezmiennyid | String | Identyfikator, który jest zwykle używany dla użytkowników migrowanych z lokalna usługa Active Directory. | Nie | Nie. | Utrwalone, wyjściowe |
legalAgeGroupClassification | String | Klasyfikacja legalnej grupy wiekowej. Tylko do odczytu i obliczane na podstawie właściwości ageGroup i consentProvidedForMinor. Dozwolone wartości: null, minorWithOutParentalConsent, minorWithParentalConsent, minorNoParentalConsentRequired, notAdult i dorosły. | Tak | Nie. | Utrwalone, wyjściowe |
legalCountry1 | String | Kraj/region do celów prawnych. | Nie | Nie. | Utrwalone, wyjściowe |
mailNickName | String | Alias poczty dla użytkownika. Maksymalna długość 64. | Nie | Nie. | Utrwalone, wyjściowe |
mobile (mobile Telefon) | String | Podstawowy numer telefonu komórkowego użytkownika. Maksymalna długość 64. | Tak | Nie. | Utrwalone, wyjściowe |
netId | String | Identyfikator sieci. | Nie | Nie. | Utrwalone, wyjściowe |
objectId | String | Unikatowy identyfikator globalny (GUID), który jest unikatowym identyfikatorem użytkownika. Przykład: 12345678-9abc-def0-1234-56789abcde. Tylko do odczytu, Niezmienny. | Tylko do odczytu | Tak | Dane wejściowe, utrwalone, wyjściowe |
otherMails | Kolekcja ciągów | Lista innych adresów e-mail użytkownika. Przykład: ["bob@contoso.com", "Robert@fabrikam.com".]. UWAGA: Znaki wyróżniające nie są dozwolone. | Tak (alternatywny adres e-mail) | Nie. | Utrwalone, wyjściowe |
hasło | String | Hasło do konta lokalnego podczas tworzenia użytkownika. | Nie | Nie. | Trwały |
passwordPolicies | String | Zasady hasła. Jest to ciąg składający się z różnych nazw zasad rozdzielonych przecinkami. Na przykład "DisablePasswordExpiration, DisableStrongPassword". | Nie | Nie. | Utrwalone, wyjściowe |
physicalDeliveryOfficeName (officeLocation) | String | Lokalizacja biura w miejscu działalności użytkownika. Maksymalna długość 128. | Tak | Nie. | Utrwalone, wyjściowe |
postalCode | String | Kod pocztowy adresu pocztowego użytkownika. Kod pocztowy jest specyficzny dla kraju/regionu użytkownika. W Stany Zjednoczone Ameryki ten atrybut zawiera kod pocztowy. Maksymalna długość 40. | Tak | Nie. | Utrwalone, wyjściowe |
preferredLanguage | String | Preferowany język dla użytkownika. Preferowany format języka jest oparty na standardzie RFC 4646. Nazwa jest kombinacją dwuliterowego kodu kultury ISO 639 skojarzonego z językiem oraz dwuliterowego kodu kultury ISO 3166 z dwuliterowym kodem subkultury skojarzonym z krajem lub regionem. Na przykład: en-US lub es-ES. | Nie | Nie. | Utrwalone, wyjściowe |
refreshTokensValidFromDateTime (signInSessionsValidFromDateTime) | DateTime | Wszystkie tokeny odświeżania wystawione przed tym czasem są nieprawidłowe, a aplikacje otrzymują błąd podczas używania nieprawidłowego tokenu odświeżania w celu uzyskania nowego tokenu dostępu. W takim przypadku aplikacja musi uzyskać nowy token odświeżania, wysyłając żądanie do autoryzowanego punktu końcowego. Tylko do odczytu. | Nie | Nie. | Wyjście |
signInNames (Tożsamości) | String | Unikatowa nazwa logowania użytkownika konta lokalnego dowolnego typu w katalogu. Użyj tego atrybutu, aby uzyskać użytkownika z wartością logowania bez określania typu konta lokalnego. | Nie | Nie. | Dane wejściowe |
signInNames.userName (Tożsamości) | String | Unikatowa nazwa użytkownika konta lokalnego w katalogu. Użyj tego atrybutu, aby utworzyć lub pobrać użytkownika z określoną nazwą użytkownika logowania. Określenie tego atrybutu w obszarze PersistedClaims alone podczas operacji Patch usuwa inne typy signInNames. Jeśli chcesz dodać nowy typ signInNames, musisz również utrwały istniejące nazwy signInNames. UWAGA: znaki wyróżniające nie są dozwolone w nazwie użytkownika. | Nie | Nie. | Dane wejściowe, utrwalone, wyjściowe |
signInNames.phoneNumber (Tożsamości) | String | Unikatowy numer telefonu użytkownika konta lokalnego w katalogu. Użyj tego atrybutu, aby utworzyć lub pobrać użytkownika z określonym numerem telefonu logowania. Określenie tego atrybutu w obszarze PersistedClaims alone podczas operacji Patch usuwa inne typy signInNames. Jeśli chcesz dodać nowy typ signInNames, musisz również utrwały istniejące nazwy signInNames. | Nie | Nie. | Dane wejściowe, utrwalone, wyjściowe |
signInNames.emailAddress (Tożsamości) | String | Unikatowy adres e-mail użytkownika konta lokalnego w katalogu. Użyj tego atrybutu, aby utworzyć lub pobrać użytkownika z określonym adresem e-mail logowania. Określenie tego atrybutu w obszarze PersistedClaims alone podczas operacji Patch usuwa inne typy signInNames. Jeśli chcesz dodać nowy typ signInNames, musisz również utrwały istniejące nazwy signInNames. | Nie | Nie. | Dane wejściowe, utrwalone, wyjściowe |
stan | String | Stan lub prowincja w adresie użytkownika. Maksymalna długość 128. | Tak | Tak | Utrwalone, wyjściowe |
streetAddress | String | Adres ulicy miejsca prowadzenia działalności użytkownika. Maksymalna długość 1024. | Tak | Tak | Utrwalone, wyjściowe |
strongAuthentication Alternative Telefon Number1 | String | Pomocniczy numer telefonu użytkownika używany do uwierzytelniania wieloskładnikowego. | Tak | Nie. | Utrwalone, wyjściowe |
strongAuthenticationEmailAddress1 | String | Adres SMTP użytkownika. Przykład: "bob@contoso.com" Ten atrybut jest używany do logowania z zasadami nazwy użytkownika do przechowywania adresu e-mail użytkownika. Następnie adres e-mail używany w przepływie resetowania hasła. Znaki wyróżniające nie są dozwolone w tym atrybucie. | Tak | Nie. | Utrwalone, wyjściowe |
strongAuthentication Telefon Number2 | String | Podstawowy numer telefonu użytkownika używany do uwierzytelniania wieloskładnikowego. | Tak | Nie. | Utrwalone, wyjściowe |
surname | String | Nazwisko użytkownika (nazwisko lub nazwisko). Maksymalna długość 64. | Tak | Tak | Utrwalone, wyjściowe |
phoneNumber (pierwszy wpis służbowy Telefon s) | String | Podstawowy numer telefonu miejsca prowadzenia działalności użytkownika. | Tak | Nie. | Utrwalone, wyjściowe |
userPrincipalName | String | Główna nazwa użytkownika (UPN). Nazwa UPN to nazwa logowania w stylu internetowym dla użytkownika oparta na standardzie internetowym RFC 822. Domena musi znajdować się w kolekcji zweryfikowanych domen dzierżawy. Ta właściwość jest wymagana podczas tworzenia konta. Niezmienne. | Nie | Nie. | Dane wejściowe, utrwalone, wyjściowe |
usageLocation | String | Wymagane dla użytkowników, którym przypisano licencje z powodu wymagania prawnego, aby sprawdzić dostępność usług w krajach/regionach. Nie można pustą wartość null. Dwuliterowy kod kraju/regionu (ISO Standard 3166). Przykłady: US, JP i GB. | Tak | Nie. | Utrwalone, wyjściowe |
userType | String | Wartość ciągu, która może służyć do klasyfikowania typów użytkowników w katalogu. Wartość musi być elementem członkowskim. Tylko do odczytu. | Tylko do odczytu | Nie. | Utrwalone, wyjściowe |
userState (externalUserState)3 | String | Tylko w przypadku konta Microsoft Entra B2B i wskazuje, czy zaproszenie ma wartość PendingAcceptance, czy Zaakceptowano. | Nie | Nie. | Utrwalone, wyjściowe |
userStateChangedOn (externalUserStateChangeDateTime)2 | DateTime | Pokazuje znacznik czasu dla najnowszej zmiany właściwości UserState. | Nie | Nie. | Utrwalone, wyjściowe |
1 Nieobsługiwane przez program Microsoft Graph
2 Aby uzyskać więcej informacji, zobacz Atrybut numeru telefonu uwierzytelniania wieloskładnikowego
3 Nie należy używać z usługą Azure AD B2C
Wymagane atrybuty
Aby utworzyć konto użytkownika w katalogu usługi Azure AD B2C, podaj następujące wymagane atrybuty:
Tożsamości — z co najmniej jedną jednostką (kontem lokalnym lub federacyjnym).
Profil hasła — jeśli tworzysz konto lokalne, podaj profil hasła.
Atrybut Nazwa wyświetlana
To displayName
nazwa wyświetlana w usłudze Azure Portal do zarządzania użytkownikami, a w tokenie dostępu zwracany przez usługę Azure AD B2C do aplikacji. Ta właściwość jest wymagana.
Atrybut Tożsamości
Konto klienta, które może być konsumentem, partnerem lub obywatelem, może być skojarzone z następującymi typami tożsamości:
- Tożsamość lokalna — nazwa użytkownika i hasło są przechowywane lokalnie w katalogu usługi Azure AD B2C. Często nazywamy te tożsamości "kontami lokalnymi".
- Tożsamość federacyjna — znana również jako konta społecznościowe lub przedsiębiorstwa , tożsamość użytkownika jest zarządzana przez federacyjnego dostawcę tożsamości, takiego jak Facebook, Microsoft, ADFS lub Salesforce.
Użytkownik z kontem klienta może zalogować się przy użyciu wielu tożsamości. Na przykład nazwa użytkownika, adres e-mail, identyfikator pracownika, identyfikator instytucji rządowych i inne. Jedno konto może mieć wiele tożsamości, zarówno lokalnych, jak i społecznościowych, z tym samym hasłem.
W interfejsie API programu Microsoft Graph tożsamości lokalne i federacyjne są przechowywane w atrybucie użytkownika identities
, który jest typu objectIdentity. Kolekcja identities
reprezentuje zestaw tożsamości używanych do logowania się do konta użytkownika. Ta kolekcja umożliwia użytkownikowi logowanie się do konta użytkownika przy użyciu dowolnej skojarzonej tożsamości. Atrybut tożsamości może zawierać maksymalnie 10 obiektówIdentity . Każdy obiekt zawiera następujące właściwości:
Imię i nazwisko/nazwa | Typ | Opis |
---|---|---|
signInType | string | Określa typy logowania użytkownika w katalogu. W przypadku konta lokalnego: emailAddress , , emailAddress3 emailAddress1 emailAddress2 , , userName lub dowolnego innego typu. Konto społecznościowe musi być ustawione na federated . |
issuer | string | Określa wystawcę tożsamości. Dla kont lokalnych (gdzie signInType nie federated jest ), ta właściwość jest lokalną domyślną nazwą domeny dzierżawy B2C, na przykład contoso.onmicrosoft.com . W przypadku tożsamości społecznościowej (gdzie signInType to federated ) wartość jest nazwą wystawcy, na przykład facebook.com |
issuerAssignedId | string | Określa unikatowy identyfikator przypisany do użytkownika przez wystawcę. Kombinacja wystawcy i wystawcyAssignedId musi być unikatowa w dzierżawie. W przypadku konta lokalnego, gdy parametr signInType jest ustawiony na emailAddress lub userName , reprezentuje nazwę logowania użytkownika.Po ustawieniu parametru signInType na:
|
Poniższy fragment kodu JSON przedstawia atrybut Identityies z tożsamością konta lokalnego z nazwą logowania, adresem e-mail jako logowaniem i tożsamością społeczną.
"identities": [
{
"signInType": "userName",
"issuer": "contoso.onmicrosoft.com",
"issuerAssignedId": "johnsmith"
},
{
"signInType": "emailAddress",
"issuer": "contoso.onmicrosoft.com",
"issuerAssignedId": "jsmith@yahoo.com"
},
{
"signInType": "federated",
"issuer": "facebook.com",
"issuerAssignedId": "5eecb0cd"
}
]
W przypadku tożsamości federacyjnych, w zależności od dostawcy tożsamości, wystawcaAssignedId jest unikatową wartością dla danego użytkownika na aplikację lub konto programistyczne. Skonfiguruj zasady usługi Azure AD B2C przy użyciu tego samego identyfikatora aplikacji przypisanego przez dostawcę społecznościowego lub inną aplikację w ramach tego samego konta programistycznego.
Właściwość profilu hasła
W przypadku tożsamości lokalnej wymagany jest atrybut passwordProfile i zawiera hasło użytkownika. Atrybut forceChangePasswordNextSignIn
wskazuje, czy użytkownik musi zresetować hasło podczas następnego logowania. Aby obsłużyć wymuszone resetowanie hasła, wykonaj instrukcje opisane w temacie Konfigurowanie przepływu wymuszonego resetowania hasła.
W przypadku tożsamości federacyjnej (społecznościowej) atrybut passwordProfile nie jest wymagany.
"passwordProfile" : {
"password": "password-value",
"forceChangePasswordNextSignIn": false
}
Atrybut zasad haseł
Zasady haseł usługi Azure AD B2C (dla kont lokalnych) są oparte na zasadach silnej siły hasła identyfikatora Entra firmy Microsoft. Zasady rejestracji lub logowania i resetowania hasła usługi Azure AD B2C wymagają silnej siły hasła i nie wygasają haseł.
W scenariuszach migracji użytkowników, jeśli konta, które chcesz migrować, mają słabszą siłę hasła niż silna siła hasła wymuszana przez usługę Azure AD B2C, możesz wyłączyć silne wymaganie dotyczące hasła. Aby zmienić domyślne zasady haseł, ustaw passwordPolicies
atrybut na DisableStrongPassword
. Możesz na przykład zmodyfikować żądanie tworzenia użytkownika w następujący sposób:
"passwordPolicies": "DisablePasswordExpiration, DisableStrongPassword"
Atrybut numeru telefonu uwierzytelniania wieloskładnikowego
W przypadku korzystania z telefonu na potrzeby uwierzytelniania wieloskładnikowego (MFA) telefon komórkowy jest używany do weryfikowania tożsamości użytkownika. Aby programowo dodać nowy numer telefonu, zaktualizować, pobrać lub usunąć numer telefonu, użyj metody uwierzytelniania za pomocą interfejsu API programu MS Graph.
W zasadach niestandardowych usługi Azure AD B2C numer telefonu jest dostępny za pośrednictwem strongAuthenticationPhoneNumber
typu oświadczenia.
Atrybuty rozszerzenia
Każda aplikacja dla klienta ma unikatowe wymagania dotyczące zbierania informacji. Dzierżawa usługi Azure AD B2C zawiera wbudowany zestaw informacji przechowywanych we właściwościach, takich jak imię, nazwisko i kod pocztowy. Za pomocą usługi Azure AD B2C można rozszerzyć zestaw właściwości przechowywanych na każdym koncie klienta. Aby uzyskać więcej informacji, zobacz Dodawanie atrybutów użytkownika i dostosowywanie danych wejściowych użytkownika w usłudze Azure Active Directory B2C
Atrybuty rozszerzenia rozszerzają schemat obiektów użytkownika w katalogu. Atrybuty rozszerzenia można zarejestrować tylko w obiekcie aplikacji, mimo że mogą zawierać dane dla użytkownika. Atrybut rozszerzenia jest dołączony do aplikacji o nazwie b2c-extensions-app
. Nie modyfikuj tej aplikacji, ponieważ jest ona używana przez usługę Azure AD B2C do przechowywania danych użytkowników. Tę aplikację można znaleźć w obszarze Microsoft Entra Rejestracje aplikacji. Dowiedz się więcej o usłudze Azure AD B2Cb2c-extensions-app
.
Uwaga
- Do dowolnego konta użytkownika można zapisać maksymalnie 100 atrybutów rozszerzenia.
- Jeśli aplikacja b2c-extensions-app zostanie usunięta, te atrybuty rozszerzenia zostaną usunięte ze wszystkich użytkowników wraz z wszelkimi danymi, które zawierają.
- Jeśli atrybut rozszerzenia zostanie usunięty przez aplikację, zostanie on usunięty ze wszystkich kont użytkowników i wartości zostaną usunięte.
Atrybuty rozszerzenia w interfejsie API programu Graph są nazwane przy użyciu konwencji extension_ApplicationClientID_AttributeName
, gdzie:
- Jest
ApplicationClientID
to identyfikatorb2c-extensions-app
aplikacji (klienta) aplikacji. Dowiedz się, jak znaleźć aplikację rozszerzeń. - Jest
AttributeName
to nazwa atrybutu rozszerzenia.
Identyfikator aplikacji (klienta) używany do tworzenia nazwy atrybutu rozszerzenia nie zawiera łączników. Na przykład:
"extension_831374b3bd5041bfaa54263ec9e050fc_loyaltyNumber": "212342"
Następujące typy danych są obsługiwane podczas definiowania atrybutu w rozszerzeniu schematu:
Typ | Uwagi |
---|---|
Wartość logiczna | Możliwe wartości: prawda lub fałsz. |
DateTime | Należy określić w formacie ISO 8601. Wartość jest przechowywana w formacie UTC. |
Integer | Wartość 32-bitowa. |
String | Maksymalnie 256 znaków. |
Następne kroki
Dowiedz się więcej o atrybutach rozszerzenia: