Definiowanie atrybutów niestandardowych w usłudze Azure Active Directory B2C

Przed rozpoczęciem użyj selektora Wybierz typ zasad, aby wybrać typ konfigurowanych zasad. Usługa Azure Active Directory B2C oferuje dwie metody definiowania sposobu interakcji użytkowników z aplikacjami: za pomocą wstępnie zdefiniowanych przepływów użytkowników lub w pełni konfigurowalnych zasad niestandardowych. Kroki wymagane w tym artykule są różne dla każdej metody.

W artykule Dodawanie oświadczeń i dostosowywanie danych wejściowych użytkownika przy użyciu zasad niestandardowych dowiesz się, jak używać wbudowanych atrybutów profilu użytkownika. W tym artykule włączysz atrybut niestandardowy w katalogu usługi Azure Active Directory B2C (Azure AD B2C). Później możesz użyć nowego atrybutu jako oświadczenia niestandardowego w przepływach użytkownika lub niestandardowych zasadach jednocześnie.

Katalog usługi Azure AD B2C zawiera wbudowany zestaw atrybutów. Jednak często trzeba utworzyć własne atrybuty, aby zarządzać konkretnym scenariuszem, na przykład w następujących przypadkach:

  • Aplikacja dla klienta musi utrwała atrybut loyaltyId .
  • Dostawca tożsamości ma unikatowy identyfikator użytkownika, uniqueUserGUID, który musi być utrwalany.
  • Niestandardowa podróż użytkownika musi utrwałać stan użytkownika, migrationStatus, aby inna logika działała.

Właściwość rozszerzenia terminów, atrybut niestandardowy i oświadczenie niestandardowe odnoszą się do tego samego w kontekście tego artykułu. Nazwa różni się w zależności od kontekstu, takiego jak aplikacja, obiekt lub zasady.

Usługa Azure AD B2C umożliwia rozszerzenie zestawu atrybutów przechowywanych na każdym koncie użytkownika. Te atrybuty można również odczytywać i zapisywać przy użyciu interfejsu API programu Microsoft Graph.

Wymagania wstępne

Tworzenie atrybutu niestandardowego

  1. Zaloguj się w witrynie Azure Portal jako administrator globalny dzierżawy usługi Azure AD B2C.
  2. Jeśli masz dostęp do wielu dzierżaw, wybierz ikonę Ustawienia w górnym menu, aby przełączyć się do dzierżawy usługi Azure AD B2C z menu Katalogi i subskrypcje.
  3. Wybierz pozycję Wszystkie usługi w lewym górnym rogu witryny Azure Portal, a następnie wyszukaj i wybierz usługę Azure AD B2C.
  4. Wybierz pozycję Atrybuty użytkownika, a następnie wybierz pozycję Dodaj.
  5. Podaj nazwę atrybutu niestandardowego (na przykład "ShoeSize")
  6. Wybierz typ danych. Dostępne są tylko ciągi, wartości logiczne i int .
  7. Opcjonalnie wprowadź opis do celów informacyjnych.
  8. Wybierz pozycję Utwórz.

Atrybut niestandardowy jest teraz dostępny na liście atrybutów użytkownika i do użycia w przepływach użytkownika. Atrybut niestandardowy jest tworzony tylko przy pierwszym użyciu w dowolnym przepływie użytkownika, a nie podczas dodawania go do listy atrybutów użytkownika.

Używanie atrybutu niestandardowego w przepływie użytkownika

  1. W dzierżawie usługi Azure AD B2C wybierz pozycję Przepływy użytkownika.
  2. Wybierz zasady (na przykład "B2C_1_SignupSignin"), aby je otworzyć.
  3. Wybierz pozycję Atrybuty użytkownika, a następnie wybierz atrybut niestandardowy (na przykład "ShoeSize"). Wybierz pozycję Zapisz.
  4. Wybierz pozycję Oświadczenia aplikacji, a następnie wybierz atrybut niestandardowy.
  5. Wybierz pozycję Zapisz.

Po utworzeniu nowego użytkownika przy użyciu przepływu użytkownika możesz użyć funkcji Uruchom przepływ użytkownika w przepływie użytkownika, aby zweryfikować środowisko klienta. Na liście atrybutów zebranych podczas rejestracji powinna być teraz widoczna wartość ShoeSize i zobaczyć ją w tokenie wysłanym z powrotem do aplikacji.

Aplikacja rozszerzeń usługi Azure AD B2C

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 Azure AD B2C, rejestracje aplikacji.

Uzyskiwanie identyfikatora aplikacji rozszerzeń

  1. Zaloguj się w witrynie Azure Portal.
  2. Jeśli masz dostęp do wielu dzierżaw, wybierz ikonę Ustawienia w górnym menu, aby przełączyć się do dzierżawy usługi Azure AD B2C z menu Katalogi i subskrypcje.
  3. W menu po lewej stronie wybierz pozycję Azure AD B2C. Możesz też wybrać pozycję Wszystkie usługi i wyszukać i wybrać pozycję Azure AD B2C.
  4. Wybierz Rejestracje aplikacji, a następnie wybierz pozycję Wszystkie aplikacje.
  5. Wybierz aplikację b2c-extensions-app. Do not modify. Used by AADB2C for storing user data..
  6. Skopiuj identyfikator aplikacji. Przykład: 11111111-1111-1111-1111-111111111111.

Pobieranie właściwości aplikacji rozszerzeń

  1. Zaloguj się w witrynie Azure Portal.
  2. Jeśli masz dostęp do wielu dzierżaw, wybierz ikonę Ustawienia w górnym menu, aby przełączyć się do dzierżawy usługi Azure AD B2C z menu Katalogi i subskrypcje.
  3. W menu po lewej stronie wybierz pozycję Azure AD B2C. Możesz też wybrać pozycję Wszystkie usługi i wyszukać i wybrać pozycję Azure AD B2C.
  4. Wybierz Rejestracje aplikacji, a następnie wybierz pozycję Wszystkie aplikacje.
  5. Wybierz aplikację b2c-extensions-app. Nie modyfikuj. Używany przez usługę AADB2C do przechowywania danych użytkownika. Aplikacji.
  6. Skopiuj następujące identyfikatory do schowka i zapisz je:
    • Identyfikator aplikacji. Przykład: 11111111-1111-1111-1111-111111111111.
    • Identyfikator obiektu. Przykład: 22222222-2222-2222-2222-222222222222.

Modyfikowanie zasad niestandardowych

Aby włączyć atrybuty niestandardowe w zasadach, podaj identyfikator aplikacji i identyfikator obiektu aplikacji w metadanych profilu technicznego AAD-Common. Profil techniczny AAD-Common* znajduje się w podstawowym profilu technicznym microsoft Entra ID i zapewnia pomoc techniczną dotyczącą zarządzania użytkownikami firmy Microsoft Entra. Inne profile techniczne identyfikatora Entra firmy Microsoft obejmują usługę AAD-Common do korzystania z jej konfiguracji. Zastąpij profil techniczny AAD-Common w pliku rozszerzenia.

  1. Otwórz plik rozszerzeń zasad. Na przykład SocialAndLocalAccounts/TrustFrameworkExtensions.xml.

  2. Znajdź element ClaimsProviders. Dodaj nowy element ClaimsProvider do elementu ClaimsProviders.

  3. Wstaw wcześniej zarejestrowany identyfikator aplikacji między elementami otwierania <Item Key="ClientId"> i zamykania</Item>.

  4. Wstaw wcześniej zarejestrowany identyfikator ObjectID aplikacji między elementami otwierania <Item Key="ApplicationObjectId"> i zamykania</Item>.

    <!-- 
    <ClaimsProviders> -->
      <ClaimsProvider>
        <DisplayName>Azure Active Directory</DisplayName>
        <TechnicalProfiles>
          <TechnicalProfile Id="AAD-Common">
            <Metadata>
              <!--Insert b2c-extensions-app application ID here, for example: 11111111-1111-1111-1111-111111111111-->  
              <Item Key="ClientId"></Item>
              <!--Insert b2c-extensions-app application ObjectId here, for example: 22222222-2222-2222-2222-222222222222-->
              <Item Key="ApplicationObjectId"></Item>
            </Metadata>
          </TechnicalProfile>
        </TechnicalProfiles> 
      </ClaimsProvider>
    <!-- 
    </ClaimsProviders> -->
    

Przekazywanie zasad niestandardowych

  1. Zaloguj się w witrynie Azure Portal.
  2. Jeśli masz dostęp do wielu dzierżaw, wybierz ikonę Ustawienia w górnym menu, aby przełączyć się do dzierżawy usługi Azure AD B2C z menu Katalogi i subskrypcje.
  3. Wybierz pozycję Wszystkie usługi w lewym górnym rogu witryny Azure Portal, a następnie wyszukaj i wybierz pozycję Rejestracje aplikacji.
  4. Wybierz pozycję Identity Experience Framework(Struktura obsługi tożsamości).
  5. Wybierz pozycję Przekaż zasady niestandardowe, a następnie przekaż zmienione pliki zasad TrustFrameworkExtensions.xml.

Uwaga

Gdy po raz pierwszy profil techniczny identyfikatora entra firmy Microsoft utrzymuje oświadczenie w katalogu, sprawdza, czy atrybut niestandardowy istnieje. Jeśli tak nie jest, tworzy atrybut niestandardowy.

Tworzenie atrybutu niestandardowego za pośrednictwem witryny Azure Portal

Te same atrybuty rozszerzenia są współużytkowane między wbudowanymi i niestandardowymi zasadami. Po dodaniu atrybutów niestandardowych za pośrednictwem środowiska portalu te atrybuty są rejestrowane przy użyciu aplikacji b2c-extensions-app , która istnieje w każdej dzierżawie usługi B2C.

Te atrybuty można utworzyć przy użyciu interfejsu użytkownika portalu przed lub po użyciu ich w zasadach niestandardowych. Podczas tworzenia atrybutu loyaltyId w portalu należy odwoływać się do niego w następujący sposób:

Nazwisko Używane w
extension_loyaltyId Zasady niestandardowe
extension_<b2c-extensions-app-guid>_loyaltyId Interfejs API programu Microsoft Graph

Uwaga

W przypadku używania atrybutu niestandardowego w zasadach niestandardowych należy zastosować prefiks identyfikatora typu oświadczenia, extension_ aby umożliwić prawidłowe mapowanie danych w katalogu usługi Azure AD B2C.

W poniższym przykładzie pokazano użycie atrybutów niestandardowych w definicji oświadczenia zasad niestandardowych usługi Azure AD B2C.

<BuildingBlocks>
  <ClaimsSchema>
    <ClaimType Id="extension_loyaltyId">
      <DisplayName>Loyalty Identification</DisplayName>
      <DataType>string</DataType>
      <UserHelpText>Your loyalty number from your membership card</UserHelpText>
      <UserInputType>TextBox</UserInputType>
    </ClaimType>
  </ClaimsSchema>
</BuildingBlocks>

W poniższym przykładzie pokazano użycie atrybutu niestandardowego w usłudze Azure AD B2C zasad niestandardowych w profilu technicznym, danych wejściowych, wyjściowych i utrwałych oświadczeń.

<InputClaims>
  <InputClaim ClaimTypeReferenceId="extension_loyaltyId"  />
</InputClaims>
<PersistedClaims>
  <PersistedClaim ClaimTypeReferenceId="extension_loyaltyId" />
</PersistedClaims>
<OutputClaims>
  <OutputClaim ClaimTypeReferenceId="extension_loyaltyId" />
</OutputClaims>

Zarządzanie atrybutami rozszerzenia za pomocą programu Microsoft Graph

Program Microsoft Graph umożliwia tworzenie atrybutów niestandardowych i zarządzanie nimi, a następnie ustawianie wartości dla użytkownika. Atrybuty rozszerzenia są również nazywane rozszerzeniami katalogu lub firmy Microsoft Entra.

Atrybuty niestandardowe (rozszerzenia katalogów) w interfejsie API programu Microsoft Graph są nazwane przy użyciu konwencji extension_{appId-without-hyphens}_{extensionProperty-name} , w której {appId-without-hyphens} jest usunięta wersja identyfikatora appId (nazywanego identyfikatorem klienta w portalu usługi Azure AD B2C) b2c-extensions-app tylko dla znaków 0-9 i A-Z. Jeśli na przykład identyfikator appId b2c-extensions-app aplikacji to 25883231-668a-43a7-80b2-5685c3f874bc , a nazwa atrybutu to loyaltyId, atrybut niestandardowy ma nazwę extension_25883231668a43a780b25685c3f874bc_loyaltyId.

Dowiedz się, jak zarządzać atrybutami rozszerzenia w dzierżawie usługi Azure AD B2C przy użyciu interfejsu API programu Microsoft Graph.

Usuń atrybut rozszerzenia

W przeciwieństwie do wbudowanych atrybutów można usunąć atrybuty niestandardowe. Można również usunąć wartości atrybutów rozszerzenia.

Ważne

Przed usunięciem atrybutu niestandardowego dla każdego konta w katalogu ustaw wartość atrybutu rozszerzenia na null. W ten sposób jawnie usuniesz wartości atrybutu rozszerzenia. Następnie usuń sam atrybut rozszerzenia. Do atrybutów niestandardowych można wykonywać zapytania przy użyciu interfejsu API programu Microsoft Graph.

Wykonaj następujące kroki, aby usunąć atrybut niestandardowy z przepływu użytkownika w dzierżawie:

  1. Zaloguj się w witrynie Azure Portal jako administrator globalny dzierżawy usługi Azure AD B2C.
  2. Upewnij się, że używasz katalogu zawierającego dzierżawę usługi Azure AD B2C:
    1. Wybierz ikonę Katalogi i subskrypcje na pasku narzędzi portalu.
    2. W ustawieniach portalu | Strona Katalogi i subskrypcje , znajdź katalog usługi Azure AD B2C na liście Nazwa katalogu, a następnie wybierz pozycję Przełącz
  3. Wybierz pozycję Wszystkie usługi w lewym górnym rogu witryny Azure Portal, a następnie wyszukaj i wybierz usługę Azure AD B2C.
  4. Wybierz pozycję Atrybuty użytkownika, a następnie wybierz atrybut, który chcesz usunąć.
  5. Wybierz pozycję Usuń, a następnie wybierz pozycję Tak , aby potwierdzić.

Zarządzanie atrybutami niestandardowymi za pomocą interfejsu API programu Microsoft Graph.

Następne kroki

Dowiedz się, jak dodawać oświadczenia i dostosowywać dane wejściowe użytkownika przy użyciu zasad niestandardowych. W tym przykładzie użyto wbudowanego oświadczenia "city". Aby użyć atrybutu niestandardowego, zastąp element "city" własnymi atrybutami niestandardowymi.