Definování vlastních atributů v Azure Active Directory B2C

Než začnete, pomocí selektoru Zvolit typ zásady zvolte typ zásady, kterou nastavujete. Azure Active Directory B2C nabízí dvě metody pro definování způsobu interakce uživatelů s vašimi aplikacemi: prostřednictvím předdefinovaných toků uživatelů nebo prostřednictvím plně konfigurovatelných vlastních zásad. Kroky vyžadované v tomto článku se pro každou metodu liší.

V článku Přidání deklarací identity a přizpůsobení uživatelského vstupu pomocí vlastních zásad se dozvíte, jak používat předdefinované atributy profilů uživatelů. V tomto článku povolíte vlastní atribut v adresáři Azure Active Directory B2C (Azure AD B2C). Později můžete nový atribut použít jako vlastní deklaraci identity v tocích uživatelů nebo vlastních zásadách současně.

Součástí vašeho adresáře Azure AD B2C je předdefinovaná sada atributů. Často ale potřebujete vytvořit vlastní atributy pro správu konkrétního scénáře, například když:

  • Aplikace, která je pro zákazníka, musí zachovat atribut loyaltyId .
  • Zprostředkovatel identity má jedinečný identifikátor uživatele uniqueUserGUID, který musí být trvalý.
  • Vlastní cesta uživatele musí zachovat stav uživatele, migrationStatus, aby ostatní logika fungovala.

Termíny extension vlastnost, vlastní atribut a vlastní deklarace identity odkazují na stejnou věc v kontextu tohoto článku. Název se liší v závislosti na kontextu, jako je aplikace, objekt nebo zásada.

Azure AD B2C umožňuje rozšířit sadu atributů uložených na každém uživatelském účtu. Tyto atributy můžete také číst a zapisovat pomocí rozhraní Microsoft Graph API.

Předpoklady

Vytvoření vlastního atributu

  1. Přihlaste se k webu Azure Portal jako globální správce vašeho tenanta Azure AD B2C.
  2. Pokud máte přístup k více tenantům, v horní nabídce vyberte ikonu Nastavení a v nabídce Adresáře a předplatná přepněte do svého tenanta Azure AD B2C.
  3. Zvolte Všechny služby v levém horním rohu portálu Azure Portal a vyhledejte a vyberte Azure AD B2C.
  4. Vyberte Atributy uživatele a pak vyberte Přidat.
  5. Zadejte název vlastního atributu (například ShoeSize).
  6. Zvolte datový typ. K dispozici jsou pouze řetězce, logické hodnoty a int .
  7. Volitelně můžete zadat popis pro informační účely.
  8. Vyberte Vytvořit.

Vlastní atribut je nyní k dispozici v seznamu uživatelských atributů a pro použití v tocích uživatelů. Vlastní atribut se vytvoří jenom při prvním použití v libovolném toku uživatele, a ne při jeho přidání do seznamu atributů uživatele.

Použití vlastního atributu v toku uživatele

  1. V tenantovi Azure AD B2C vyberte Toky uživatelů.
  2. Vyberte zásadu (například "B2C_1_SignupSignin") a otevřete ji.
  3. Vyberte atributy uživatele a pak vyberte vlastní atribut (například ShoeSize). Zvolte Uložit.
  4. Vyberte Deklarace identity aplikací a pak vyberte vlastní atribut.
  5. Zvolte Uložit.

Po vytvoření nového uživatele pomocí toku uživatele můžete pomocí funkce Spustit tok uživatele v toku uživatele ověřit prostředí zákazníka. Teď byste měli vidět ShoeSize v seznamu atributů shromážděných během cesty registrace a vidět ho v tokenu odeslaném zpět do vaší aplikace.

Aplikace rozšíření Azure AD B2C

Atributy rozšíření lze zaregistrovat pouze u objektu aplikace, i když můžou obsahovat data pro uživatele. Atribut rozšíření je připojen k aplikaci s názvem b2c-extensions-app. Tuto aplikaci neupravujte, protože ji používá Azure AD B2C k ukládání uživatelských dat. Tuto aplikaci najdete v části Azure AD B2C, registrace aplikací.

Získání ID aplikace rozšíření

  1. Přihlaste se k portálu Azure.
  2. Pokud máte přístup k více tenantům, v horní nabídce vyberte ikonu Nastavení a v nabídce Adresáře a předplatná přepněte do svého tenanta Azure AD B2C.
  3. V nabídce vlevo vyberte Azure AD B2C. Nebo vyberte Všechny služby a vyhledejte a vyberte Azure AD B2C.
  4. Vyberte Registrace aplikací a pak vyberte Všechny aplikace.
  5. Vyberte aplikaci b2c-extensions-app. Do not modify. Used by AADB2C for storing user data..
  6. Zkopírujte ID aplikace. Příklad: 11111111-1111-1111-1111-111111111111.

Získání vlastností aplikace rozšíření

  1. Přihlaste se k portálu Azure.
  2. Pokud máte přístup k více tenantům, v horní nabídce vyberte ikonu Nastavení a v nabídce Adresáře a předplatná přepněte do svého tenanta Azure AD B2C.
  3. V nabídce vlevo vyberte Azure AD B2C. Nebo vyberte Všechny služby a vyhledejte a vyberte Azure AD B2C.
  4. Vyberte Registrace aplikací a pak vyberte Všechny aplikace.
  5. Vyberte b2c-extensions-app. Neupravujte. AADB2C používá k ukládání uživatelských dat. Aplikace.
  6. Zkopírujte do schránky následující identifikátory a uložte je:
    • ID aplikace: Příklad: 11111111-1111-1111-1111-111111111111.
    • ID objektu. Příklad: 22222222-2222-2222-2222-222222222222.

Úprava vlastních zásad

Pokud chcete ve své zásadě povolit vlastní atributy, zadejte ID aplikace a ID objektu aplikace v metadatech technického profilu AAD Common. Technický profil AAD-Common* najdete v základním technickém profilu Microsoft Entra ID a poskytuje podporu pro správu uživatelů Microsoft Entra. Mezi další technické profily Microsoft Entra ID patří AAD-Common , aby se používala jeho konfigurace. Přepište technický profil AAD-Common v souboru s příponou.

  1. Otevřete soubor s příponami zásad. Například, SocialAndLocalAccounts/TrustFrameworkExtensions.xml.

  2. Vyhledejte element ClaimsProviders. Přidejte nový ClaimsProvider do elementu ClaimsProviders.

  3. Vložte ID aplikace, které jste si předtím poznamenali, mezi levý <Item Key="ClientId"> a uzavírací </Item> prvek.

  4. Vložte ID objektu aplikace, které jste předtím zaznamenali, mezi levý <Item Key="ApplicationObjectId"> a uzavírací </Item> prvek.

    <!-- 
    <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> -->
    

Nahrání vlastních zásad

  1. Přihlaste se k portálu Azure.
  2. Pokud máte přístup k více tenantům, v horní nabídce vyberte ikonu Nastavení a v nabídce Adresáře a předplatná přepněte do svého tenanta Azure AD B2C.
  3. V levém horním rohu webu Azure Portal zvolte Všechny služby a pak vyhledejte a vyberte Registrace aplikací.
  4. Vyberte Architekturu prostředí identit.
  5. Vyberte Nahrát vlastní zásady a pak nahrajte soubory zásad TrustFrameworkExtensions.xml, které jste změnili.

Poznámka:

Když technický profil Microsoft Entra ID poprvé zachová deklaraci identity do adresáře, zkontroluje, jestli existuje vlastní atribut. Pokud ne, vytvoří vlastní atribut.

Vytvoření vlastního atributu prostřednictvím webu Azure Portal

Stejné atributy rozšíření se sdílejí mezi integrovanými a vlastními zásadami. Když do prostředí portálu přidáte vlastní atributy, tyto atributy se zaregistrují pomocí aplikace b2c-extensions-app, která existuje v každém tenantovi B2C.

Tyto atributy můžete vytvořit pomocí uživatelského rozhraní portálu před použitím nebo po jejich použití ve vlastních zásadách. Když na portálu vytvoříte id věrnosti atributu, musíte na něj odkazovat následujícím způsobem:

Název Použito v
extension_loyaltyId Vlastní zásady
extension_<b2c-extensions-app-guid>_loyaltyId Microsoft Graph API

Poznámka:

Při použití vlastního atributu ve vlastních zásadách musíte předponu ID extension_ typu deklarace identity použít, aby se v adresáři Azure AD B2C uskutečnilo správné mapování dat.

Následující příklad ukazuje použití vlastních atributů v definici deklarace vlastních zásad 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>

Následující příklad ukazuje použití vlastního atributu ve vlastních zásadách Azure AD B2C v technickém profilu, vstupu, výstupu a trvalých deklarací identity.

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

Správa atributů rozšíření prostřednictvím Microsoft Graphu

Pomocí Microsoft Graphu můžete vytvářet a spravovat vlastní atributy a pak nastavit hodnoty pro uživatele. Atributy rozšíření se také označují jako adresáře nebo rozšíření Microsoft Entra.

Vlastní atributy (rozšíření adresáře) v rozhraní Microsoft Graph API jsou pojmenované pomocí konvence extension_{appId-without-hyphens}_{extensionProperty-name} , kde {appId-without-hyphens} je proříznutá verze ID aplikace (označovaná jako ID klienta na portálu Azure AD B2C) pouze b2c-extensions-app se znaky 0–9 a A-Z. Pokud je například appId b2c-extensions-app aplikace 25883231-668a-43a7-80b2-5685c3f874bc a název atributu je loyaltyId, vlastní atribut je pojmenován extension_25883231668a43a780b25685c3f874bc_loyaltyId.

Zjistěte, jak spravovat atributy rozšíření v tenantovi Azure AD B2C pomocí rozhraní Microsoft Graph API.

Odebrání atributu rozšíření

Na rozdíl od předdefinovaných atributů je možné vlastní atributy odebrat. Hodnoty atributů rozšíření je také možné odebrat.

Důležité

Před odebráním vlastního atributu pro každý účet v adresáři nastavte hodnotu atributu rozšíření na nullhodnotu . Tímto způsobem explicitně odeberete hodnoty atributu rozšíření. Potom pokračujte odebráním samotného atributu rozšíření. Vlastní atributy je možné dotazovat pomocí rozhraní Microsoft Graph API.

Pomocí následujících kroků odeberte vlastní atribut z toku uživatele ve vašem tenantovi:

  1. Přihlaste se k webu Azure Portal jako globální správce vašeho tenanta Azure AD B2C.
  2. Ujistěte se, že používáte adresář, který obsahuje vašeho tenanta Azure AD B2C:
    1. Na panelu nástrojů portálu vyberte ikonu Adresáře a předplatná .
    2. V nastavení portálu | Stránka Adresáře a předplatná , vyhledejte adresář Azure AD B2C v seznamu názvů adresářů a pak vyberte Přepnout.
  3. Zvolte Všechny služby v levém horním rohu portálu Azure Portal a vyhledejte a vyberte Azure AD B2C.
  4. Vyberte Atributy uživatele a pak vyberte atribut, který chcete odstranit.
  5. Vyberte Odstranit a pak potvrďte výběr možnosti Ano .

Další kroky

Naučte se přidávat deklarace identity a přizpůsobovat uživatelský vstup pomocí vlastních zásad. Tato ukázka používá integrovanou deklaraci identity city. Pokud chcete použít vlastní atribut, nahraďte město vlastními atributy.