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:

  • Nazwa wyświetlana

  • 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, , emailAddress3emailAddress1emailAddress2, , userNamelub 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 federatedjest ), 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:
  • emailAddress (lub zaczyna się od emailAddressemailAddress1) issuerAssignedId musi być prawidłowym adresem e-mail
  • userName (lub dowolna inna wartość), issuerAssignedId musi być prawidłową lokalną częścią adresu e-mail
  • federated, issuerAssignedId reprezentuje unikatowy identyfikator konta federacyjnego

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: