Compartilhar via


BuildingBlocks

Importante

A partir de 1º de maio de 2025, o Azure AD B2C não estará mais disponível para compra para novos clientes. Saiba mais em nossas perguntas frequentes.

Observação

No Azure Active Directory B2C, as políticas personalizadas são projetadas principalmente para tratar de cenários complexos. Para a maioria dos cenários, recomendamos que você use fluxos de usuários predefinidos. Se você ainda não fez isso, saiba mais sobre o pacote de início de política personalizado em Introdução às políticas personalizadas no Active Directory B2C.

O elemento BuildingBlocks é adicionado dentro do elemento TrustFrameworkPolicy .

<TrustFrameworkPolicy
  xmlns:xsi="https://www.w3.org/2001/XMLSchema-instance"
  xmlns:xsd="https://www.w3.org/2001/XMLSchema"
  xmlns="http://schemas.microsoft.com/online/cpim/schemas/2013/06"
  PolicySchemaVersion="0.3.0.0"
  TenantId="mytenant.onmicrosoft.com"
  PolicyId="B2C_1A_TrustFrameworkBase"
  PublicPolicyUri="http://mytenant.onmicrosoft.com/B2C_1A_TrustFrameworkBase">

  <BuildingBlocks>
    <ClaimsSchema>
      ...
    </ClaimsSchema>
    <Predicates>
    ...
    </Predicates>
    <PredicateValidations>
    ...
    </PredicateValidations>
    <ClaimsTransformations>
      ...
    </ClaimsTransformations>
    <ContentDefinitions>
      ...
    </ContentDefinitions>
    <Localization>
      ...
    </Localization>
    <DisplayControls>
      ...
    </DisplayControls>
 </BuildingBlocks>

O elemento BuildingBlocks contém os seguintes elementos que devem ser especificados na ordem definida:

  • ClaimsSchema – define os tipos de declaração que podem ser referenciados como parte da política. O esquema de declarações é o local em que você declara seus tipos de declaração. Um tipo de declaração é semelhante a uma variável em muitas linguagens programáticas. Você pode usar o tipo de declaração para coletar dados do usuário do seu aplicativo, receber declarações de provedores de identidade social, enviar e receber dados de uma API REST personalizada ou armazenar quaisquer dados internos usados por sua política personalizada.

  • Predicados e PredicateValidationsInput – permite que você execute um processo de validação para garantir que apenas dados formados corretamente sejam inseridos em uma declaração.

  • ClaimsTransformations – Contém uma lista de transformações de declarações que podem ser usadas em sua política. Uma transformação de declarações converte uma declaração em outra. Na transformação de declarações, você especifica um método de transformação, como:

    • Alterando o caso de uma declaração de cadeia de caracteres para a especificada. Por exemplo, alterando uma cadeia de caracteres de minúsculas para maiúsculas.
    • Comparando duas declarações e retornando uma declaração com true indicando que as declarações correspondem, caso contrário, false.
    • Criando uma declaração de cadeia de caracteres do parâmetro fornecido na política.
    • Criando uma cadeia de caracteres aleatória usando o gerador de número aleatório.
    • Formatar uma declaração de acordo com a cadeia de caracteres de formato fornecida. Essa transformação usa o método C# String.Format.
  • InputValidation – Esse elemento permite que você execute agregações boolianas semelhantes a e eou.

  • ContentDefinitions – Contém URLs para modelos HTML5 a serem usados no percurso do usuário. Em uma política personalizada, uma definição de conteúdo define o URI da página HTML5 que é usado para uma etapa especificada no percurso do usuário. Por exemplo, as páginas de entrada ou inscrição, redefinição de senha ou erro. Você pode modificar a aparência substituindo o LoadUri para o arquivo HTML5. Ou você pode criar novas definições de conteúdo de acordo com suas necessidades. Esse elemento pode conter uma referência de recursos localizados usando uma ID de localização.

  • Localização – Permite que você dê suporte a vários idiomas. O suporte à localização em políticas permite que você configure a lista de idiomas com suporte em uma política e escolha um idioma padrão. Também há suporte para cadeias de caracteres e coleções específicas de linguagem.

  • DisplayControls – Define os controles a serem exibidos em uma página. Os controles de exibição têm funcionalidade especial e interagem com perfis técnicos de validação de back-end.