Transformações de declarações JSON

Este artigo fornece exemplos para usar as transformações de declarações JSON do esquema do Identity Experience Framework no Azure Ative Directory B2C (Azure AD B2C). Para obter mais informações, consulte Transformações de declarações.

CreateJsonArray

Crie uma matriz JSON de elemento único a partir de um valor de declaração. Confira a demonstração ao vivo dessa transformação de reivindicações.

Elemento TransformationClaimType Tipo de Dados Notas
InputClaim inputClaim string A reivindicação a ser adicionada à declaração de saída.
OutputClaim outputClaim string A cadeia de caracteres JSON que é produzida após essa transformação de declarações ter sido invocada.

Exemplo de CreateJsonArray

O exemplo a seguir cria uma matriz única JSON.

<ClaimsTransformation Id="createlJsonPayload" TransformationMethod="CreateJsonArray">
  <InputClaims>
    <InputClaim ClaimTypeReferenceId="email" TransformationClaimType="inputClaim" />
  </InputClaims>
  <OutputClaims>
    <OutputClaim ClaimTypeReferenceId="result" TransformationClaimType="outputClaim" />
  </OutputClaims>
</ClaimsTransformation>
  • Declarações de entrada:
    • inputClaim: someone@example.com
  • Declarações de saída:
    • outputClaim: ["someone@contoso.com"]

GenerateJson

Use valores de declaração ou constantes para gerar uma cadeia de caracteres JSON. A cadeia de caracteres de caminho após a notação de ponto é usada para indicar onde inserir os dados em uma cadeia de caracteres JSON. Após a divisão por pontos, todos os inteiros são interpretados como o índice de uma matriz JSON e os não inteiros são interpretados como o índice de um objeto JSON.

Confira a demonstração ao vivo dessa transformação de reivindicações.

Elemento TransformationClaimType Tipo de Dados Notas
InputClaim Qualquer cadeia de caracteres após notação de ponto string O JsonPath do JSON onde o valor da declaração será inserido.
InputParameter Qualquer cadeia de caracteres após notação de ponto string O JsonPath do JSON onde o valor da cadeia de caracteres constante será inserido.
OutputClaim outputClaim string A cadeia de caracteres JSON gerada.

Matrizes JSON

Para adicionar objetos JSON a uma matriz JSON, use o formato do nome da matriz e o índice na matriz. A matriz é baseada em zero. Comece com zero a N, sem pular nenhum número. Os itens na matriz podem conter qualquer objeto. Por exemplo, o primeiro item contém dois objetos, app e appId. O segundo item contém um único objeto, programa. O terceiro item contém quatro objetos, cor, linguagem, logotipo e fundo.

O exemplo a seguir demonstra como configurar matrizes JSON. A matriz de e-mails usa o InputClaims com valores dinâmicos. A matriz de valores usa o InputParameters com valores estáticos.

<ClaimsTransformation Id="GenerateJsonPayload" TransformationMethod="GenerateJson">
  <InputClaims>
    <InputClaim ClaimTypeReferenceId="mailToName1" TransformationClaimType="emails.0.name" />
    <InputClaim ClaimTypeReferenceId="mailToAddress1" TransformationClaimType="emails.0.address" />
    <InputClaim ClaimTypeReferenceId="mailToName2" TransformationClaimType="emails.1.name" />
    <InputClaim ClaimTypeReferenceId="mailToAddress2" TransformationClaimType="emails.1.address" />
  </InputClaims>
  <InputParameters>
    <InputParameter Id="values.0.app" DataType="string" Value="Mobile app" />
    <InputParameter Id="values.0.appId" DataType="string" Value="123" />
    <InputParameter Id="values.1.program" DataType="string" Value="Holidays" />
    <InputParameter Id="values.2.color" DataType="string" Value="Yellow" />
    <InputParameter Id="values.2.language" DataType="string" Value="Spanish" />
    <InputParameter Id="values.2.logo" DataType="string" Value="contoso.png" />
    <InputParameter Id="values.2.background" DataType="string" Value="White" />
  </InputParameters>
  <OutputClaims>
    <OutputClaim ClaimTypeReferenceId="result" TransformationClaimType="outputClaim" />
  </OutputClaims>
</ClaimsTransformation>

O resultado dessa transformação de reivindicações:

{
  "values": [
    {
      "app": "Mobile app",
      "appId": "123"
    },
    {
      "program": "Holidays"
    },
    {
      "color": "Yellow",
      "language": "Spanish",
      "logo": "contoso.png",
      "background": "White"
    }
  ],
  "emails": [
    {
      "name": "Joni",
      "address": "joni@contoso.com"
    },
    {
      "name": "Emily",
      "address": "emily@contoso.com"
    }
  ]
}

Para especificar uma matriz JSON nas declarações de entrada e nos parâmetros de entrada, você deve iniciar a matriz no InputClaims elemento zero, a N. Em seguida, no elemento continue o InputParameters índice do último índice.

O exemplo a seguir demonstra uma matriz que é definida nas declarações de entrada e nos parâmetros de entrada. O primeiro item da matriz values.0 de valores é definido nas declarações de entrada. Os parâmetros de entrada continuam do índice um values.1 a dois índices values.2.

<ClaimsTransformation Id="GenerateJsonPayload" TransformationMethod="GenerateJson">
  <InputClaims>
    <InputClaim ClaimTypeReferenceId="app" TransformationClaimType="values.0.app" />
    <InputClaim ClaimTypeReferenceId="appId" TransformationClaimType="values.0.appId"  />
  </InputClaims>
  <InputParameters>
    <InputParameter Id="values.1.program" DataType="string" Value="Holidays" />
    <InputParameter Id="values.2.color" DataType="string" Value="Yellow" />
    <InputParameter Id="values.2.language" DataType="string" Value="Spanish" />
    <InputParameter Id="values.2.logo" DataType="string" Value="contoso.png" />
    <InputParameter Id="values.2.background" DataType="string" Value="White" />
  </InputParameters>
  <OutputClaims>
    <OutputClaim ClaimTypeReferenceId="result" TransformationClaimType="outputClaim" />
  </OutputClaims>
</ClaimsTransformation>

Exemplo de GenerateJson

O exemplo a seguir gera uma cadeia de caracteres JSON com base no valor de declaração de "email" e "OTP" e cadeias de caracteres constantes.

<ClaimsTransformation Id="GenerateRequestBody" TransformationMethod="GenerateJson">
  <InputClaims>
    <InputClaim ClaimTypeReferenceId="email" TransformationClaimType="personalizations.0.to.0.email" />
    <InputClaim ClaimTypeReferenceId="otp" TransformationClaimType="personalizations.0.dynamic_template_data.otp" />
    <InputClaim ClaimTypeReferenceId="copiedEmail" TransformationClaimType="personalizations.0.dynamic_template_data.verify-email" />
  </InputClaims>
  <InputParameters>
    <InputParameter Id="template_id" DataType="string" Value="d-4c56ffb40fa648b1aa6822283df94f60"/>
    <InputParameter Id="from.email" DataType="string" Value="service@contoso.com"/>
    <InputParameter Id="personalizations.0.subject" DataType="string" Value="Contoso account email verification code"/>
  </InputParameters>
  <OutputClaims>
    <OutputClaim ClaimTypeReferenceId="requestBody" TransformationClaimType="outputClaim"/>
  </OutputClaims>
</ClaimsTransformation>

A transformação de declarações a seguir gera uma declaração de cadeia de caracteres JSON que será o corpo da solicitação enviada ao SendGrid (um provedor de email de terceiros). A estrutura do objeto JSON é definida pelos IDs na notação de pontos dos InputParameters e TransformationClaimTypes dos InputClaims. Os números na notação de pontos implicam matrizes. Os valores vêm dos valores de InputClaims e das propriedades "Value" de InputParameters.

  • Declarações de entrada:
    • e-mail, tipo de declaração de transformação personalizations.0.to.0.email: "someone@example.com"
    • copiedEmail, tipo de declaração de transformação personalizations.0.dynamic_template_data.verify-email: "someone@example.com"
    • OTP, tipo de declaração de transformação personalizations.0.dynamic_template_data.otp "346349"
  • Parâmetro de entrada:
    • template_id: "d-4c56ffb40fa648b1aa6822283df94f60"
    • from.email: "service@contoso.com"
    • personalizations.0.subject "Código de verificação de email da conta Contoso"
  • Reivindicação de saída:
    • outputClaim:

      {
        "personalizations": [
          {
            "to": [
              {
                "email": "someone@example.com"
              }
            ],
            "dynamic_template_data": {
              "otp": "346349",
              "verify-email" : "someone@example.com"
            },
            "subject": "Contoso account email verification code"
          }
        ],
        "template_id": "d-989077fbba9746e89f3f6411f596fb96",
        "from": {
          "email": "service@contoso.com"
        }
      }
      

Outro exemplo de GenerateJson

O exemplo a seguir gera uma cadeia de caracteres JSON com base nos valores de declaração e cadeias de caracteres constantes.

<ClaimsTransformation Id="GenerateRequestBody" TransformationMethod="GenerateJson">
  <InputClaims>
    <InputClaim ClaimTypeReferenceId="email" TransformationClaimType="customerEntity.email" />
    <InputClaim ClaimTypeReferenceId="objectId" TransformationClaimType="customerEntity.userObjectId" />
    <InputClaim ClaimTypeReferenceId="givenName" TransformationClaimType="customerEntity.firstName" />
    <InputClaim ClaimTypeReferenceId="surname" TransformationClaimType="customerEntity.lastName" />
  </InputClaims>
  <InputParameters>
    <InputParameter Id="customerEntity.role.name" DataType="string" Value="Administrator"/>
    <InputParameter Id="customerEntity.role.id" DataType="long" Value="1"/>
  </InputParameters>
  <OutputClaims>
    <OutputClaim ClaimTypeReferenceId="requestBody" TransformationClaimType="outputClaim"/>
  </OutputClaims>
</ClaimsTransformation>

A transformação de declarações a seguir gera uma declaração de cadeia de caracteres JSON que será o corpo da solicitação enviada a uma API REST. A estrutura do objeto JSON é definida pelos IDs na notação de pontos dos InputParameters e TransformationClaimTypes dos InputClaims. Os valores vêm dos valores de InputClaims e das propriedades "Value" de InputParameters.

  • Declarações de entrada:
    • e-mail, tipo de declaração de transformação customerEntity.email: "john.s@contoso.com"
    • objectId, tipo de declaração de transformação customerEntity.userObjectId "aaaaa-0000-1111-2222-bbbbbbbbbbbb"
    • givenName, tipo de declaração de transformação customerEntity.firstName "John"
    • sobrenome, transformação tipo de declaração customerEntity.lastName "Smith"
  • Parâmetro de entrada:
    • customerEntity.role.name: "Administrador"
    • customerEntity.role.id 1
  • Reivindicação de saída:
    • requestBody:

      {
         "customerEntity":{
            "email":"john.s@contoso.com",
            "userObjectId":"aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb",
            "firstName":"John",
            "lastName":"Smith",
            "role":{
               "name":"Administrator",
               "id": 1
            }
         }
      }
      

A transformação de declarações GenerateJson aceita cadeias de caracteres simples. Se uma declaração de entrada contiver uma cadeia de caracteres JSON, essa cadeia de caracteres será escapada. No exemplo a seguir, se você usar a saída de e-mail de CreateJsonArray acima, ou seja, ["someone@contoso.com"], como um parâmetro de entrada, o e-mail terá a aparência mostrada na seguinte declaração JSON:

  • Reivindicação de saída:
    • requestBody:

      {
         "customerEntity":{
            "email":"[\"someone@contoso.com\"]",
            "userObjectId":"aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb",
            "firstName":"John",
            "lastName":"Smith",
            "role":{
               "name":"Administrator",
               "id": 1
            }
         }
      }
      

GetClaimFromJson

Obtenha um elemento especificado de um dado JSON. Confira a demonstração ao vivo dessa transformação de reivindicações.

Elemento TransformationClaimType Tipo de Dados Notas
InputClaim inputJson string As declarações que são usadas pela transformação de declarações para obter o item.
InputParameter claimToExtract string o nome do elemento JSON a ser extraído.
OutputClaim extractedClaim string A declaração que é produzida após essa transformação de declarações ter sido invocada, o valor do elemento especificado no parâmetro de entrada claimToExtract .

Exemplo de GetClaimFromJson

No exemplo a seguir, a transformação de declarações extraiu o emailAddress elemento dos dados JSON: {"emailAddress": "someone@example.com", "displayName": "Someone"}

<ClaimsTransformation Id="GetEmailClaimFromJson" TransformationMethod="GetClaimFromJson">
  <InputClaims>
    <InputClaim ClaimTypeReferenceId="customUserData" TransformationClaimType="inputJson" />
  </InputClaims>
  <InputParameters>
    <InputParameter Id="claimToExtract" DataType="string" Value="emailAddress" />
  </InputParameters>
  <OutputClaims>
    <OutputClaim ClaimTypeReferenceId="extractedEmail" TransformationClaimType="extractedClaim" />
  </OutputClaims>
</ClaimsTransformation>
  • Declarações de entrada:
    • inputJson: {"emailAddress": "someone@example.com", "displayName": "Alguém"}
  • Parâmetro de entrada:
    • claimToExtract: endereço de e-mail
  • Declarações de saída:
    • extractedClaim: someone@example.com

Outro exemplo de GetClaimFromJson

A transformação de declarações GetClaimFromJson obtém um único elemento de um dado JSON. No exemplo anterior, o emailAddress. Para obter o displayName, crie outra transformação de declarações. Por exemplo:

<ClaimsTransformation Id="GetDispalyNameClaimFromJson" TransformationMethod="GetClaimFromJson">
  <InputClaims>
    <InputClaim ClaimTypeReferenceId="customUserData" TransformationClaimType="inputJson" />
  </InputClaims>
  <InputParameters>
    <InputParameter Id="claimToExtract" DataType="string" Value="displayName" />
  </InputParameters>
  <OutputClaims>
    <OutputClaim ClaimTypeReferenceId="displayName" TransformationClaimType="extractedClaim" />
  </OutputClaims>
</ClaimsTransformation>
  • Declarações de entrada:
    • inputJson: {"emailAddress": "someone@example.com", "displayName": "Alguém"}
  • Parâmetro de entrada:
    • claimToExtract: displayName
  • Declarações de saída:
    • extractedClaim: Alguém

GetClaimsFromJsonArray

Obtenha uma lista de elementos especificados dos dados Json. Confira a demonstração ao vivo dessa transformação de reivindicações.

Elemento TransformationClaimType Tipo de Dados Notas
InputClaim jsonSourceClaim string A declaração com a carga JSON útil. Essa declaração é usada pela transformação de declarações para obter as reivindicações.
InputParameter errorOnMissingClaims boolean Especifica se um erro deve ser lançado se uma das declarações estiver ausente.
InputParameter includeEmptyClaims string Especifique se deseja incluir declarações vazias.
InputParameter jsonSourceKeyName string Nome da chave do elemento
InputParameter jsonSourceValueName string Nome do valor do elemento
OutputClaim Coleção string, int, booleano e datetime Lista de alegações a extrair. O nome da declaração deve ser igual ao especificado na declaração de entrada jsonSourceClaim .

Exemplo de GetClaimsFromJsonArray

No exemplo a seguir, a transformação de declarações extrai as seguintes declarações: email (string), displayName (string), membershipNum (int), ative (boolean) e birthDate (datetime) dos dados JSON.

<ClaimsTransformation Id="GetClaimsFromJson" TransformationMethod="GetClaimsFromJsonArray">
  <InputClaims>
    <InputClaim ClaimTypeReferenceId="jsonSourceClaim" TransformationClaimType="jsonSource" />
  </InputClaims>
  <InputParameters>
    <InputParameter Id="errorOnMissingClaims" DataType="boolean" Value="false" />
    <InputParameter Id="includeEmptyClaims" DataType="boolean" Value="false" />
    <InputParameter Id="jsonSourceKeyName" DataType="string" Value="key" />
    <InputParameter Id="jsonSourceValueName" DataType="string" Value="value" />
  </InputParameters>
  <OutputClaims>
    <OutputClaim ClaimTypeReferenceId="email" />
    <OutputClaim ClaimTypeReferenceId="displayName" />
    <OutputClaim ClaimTypeReferenceId="membershipID" />
    <OutputClaim ClaimTypeReferenceId="active" />
    <OutputClaim ClaimTypeReferenceId="birthDate" />
  </OutputClaims>
</ClaimsTransformation>
  • Declarações de entrada:

    • jsonSourceClaim:

      [
        {
          "key": "email",
          "value": "someone@example.com"
        },
        {
          "key": "displayName",
          "value": "Someone"
        },
        {
          "key": "membershipID",
          "value": 6353399
        },
        {
          "key": "active",
          "value": true
        },
        {
          "key": "birthDate",
          "value": "2005-09-23T00:00:00Z"
        }
      ]
      
  • Parâmetros de entrada:

    • errorOnMissingClaims: falso
    • includeEmptyClaims: falso
    • jsonSourceKeyName: chave
    • jsonSourceValueName: valor
  • Declarações de saída:

    • e-mail: "someone@example.com"
    • displayName: "Alguém"
    • membershipID: 6353399
    • ativo: verdadeiro
    • Data de nascimento: 2005-09-23T00:00:00Z

GetClaimsFromJsonArrayV2

Obtenha uma lista de elementos especificados de uma coleção de cadeia de caracteres JSON elementos. Confira a demonstração ao vivo dessa transformação de reivindicações.

Elemento TransformationClaimType Tipo de Dados Notas
InputClaim jsonSourceClaim stringCollection A declaração de coleção de cadeia de caracteres com as cargas úteis JSON. Essa declaração é usada pela transformação de declarações para obter as reivindicações.
InputParameter errorOnMissingClaims boolean Especifica se um erro deve ser lançado se uma das declarações estiver ausente.
InputParameter includeEmptyClaims string Especifique se deseja incluir declarações vazias.
InputParameter jsonSourceKeyName string Nome da chave do elemento
InputParameter jsonSourceValueName string Nome do valor do elemento
OutputClaim Coleção string, int, booleano e datetime Lista de alegações a extrair. O nome da declaração deve ser igual ao especificado na declaração de entrada jsonSourceClaim .

Exemplo de GetClaimsFromJsonArrayV2

No exemplo a seguir, a transformação de declarações extrai as seguintes declarações: email (string), displayName (string), membershipNum (int), ative (boolean) e birthDate (datetime) dos dados JSON.

<ClaimsTransformation Id="GetClaimsFromJson" TransformationMethod="GetClaimsFromJsonArrayV2">
  <InputClaims>
    <InputClaim ClaimTypeReferenceId="jsonSourceClaim" TransformationClaimType="jsonSource" />
  </InputClaims>
  <InputParameters>
    <InputParameter Id="errorOnMissingClaims" DataType="boolean" Value="false" />
    <InputParameter Id="includeEmptyClaims" DataType="boolean" Value="false" />
    <InputParameter Id="jsonSourceKeyName" DataType="string" Value="key" />
    <InputParameter Id="jsonSourceValueName" DataType="string" Value="value" />
  </InputParameters>
  <OutputClaims>
    <OutputClaim ClaimTypeReferenceId="email" />
    <OutputClaim ClaimTypeReferenceId="displayName" />
    <OutputClaim ClaimTypeReferenceId="membershipID" />
    <OutputClaim ClaimTypeReferenceId="active" />
    <OutputClaim ClaimTypeReferenceId="birthDate" />
  </OutputClaims>
</ClaimsTransformation>
  • Declarações de entrada:

    • jsonSourceClaim[0] (primeiro elemento da coleção de strings):

        {
          "key": "email",
          "value": "someone@example.com"
        }
      
    • jsonSourceClaim[1] (segundo elemento da coleção string):

        {
          "key": "displayName",
          "value": "Someone"
        }
      
    • jsonSourceClaim[2] (terceiro elemento da coleção string):

        {
          "key": "membershipID",
          "value": 6353399
        }
      
    • jsonSourceClaim[3] (quarto elemento da coleção string):

        {
          "key": "active",
          "value": true
        }
      
    • jsonSourceClaim[4] (quinto elemento da coleção string):

        {
          "key": "birthDate",
          "value": "2005-09-23T00:00:00Z"
        }
      
  • Parâmetros de entrada:

    • errorOnMissingClaims: falso
    • includeEmptyClaims: falso
    • jsonSourceKeyName: chave
    • jsonSourceValueName: valor
  • Declarações de saída:

    • e-mail: "someone@example.com"
    • displayName: "Alguém"
    • membershipID: 6353399
    • ativo: verdadeiro
    • Data de nascimento: 2005-09-23T00:00:00Z

GetNumericClaimFromJson

Obtém um elemento numérico (longo) especificado de um dado JSON. Confira a demonstração ao vivo dessa transformação de reivindicações.

Elemento TransformationClaimType Tipo de Dados Notas
InputClaim inputJson string A declaração com a carga JSON útil. Essa declaração é usada pela transformação de declarações para obter a declaração numérica.
InputParameter claimToExtract string O nome do elemento JSON a ser extraído.
OutputClaim extractedClaim long A declaração que é produzida após essa transformação de declarações ter sido invocada, o valor do elemento especificado nos parâmetros de entrada claimToExtract .

Exemplo de GetNumericClaimFromJson

No exemplo a seguir, a transformação de declarações extrai o id elemento dos dados JSON.

<ClaimsTransformation Id="GetIdFromResponse" TransformationMethod="GetNumericClaimFromJson">
  <InputClaims>
    <InputClaim ClaimTypeReferenceId="exampleInputClaim" TransformationClaimType="inputJson" />
  </InputClaims>
  <InputParameters>
    <InputParameter Id="claimToExtract" DataType="string" Value="id" />
  </InputParameters>
  <OutputClaims>
    <OutputClaim ClaimTypeReferenceId="membershipId" TransformationClaimType="extractedClaim" />
  </OutputClaims>
</ClaimsTransformation>
  • Declarações de entrada:

    • inputJson:

      {
        "emailAddress": "someone@example.com",
        "displayName": "Someone",
        "id": 6353399
      }
      
  • Parâmetros de entrada

    • claimToExtract: id
  • Declarações de saída:

    • extractedClaim: 6353399

GetSingleItemFromJson

Obtém o primeiro elemento de um dado JSON. Confira a demonstração ao vivo dessa transformação de reivindicações.

Elemento TransformationClaimType Tipo de Dados Notas
InputClaim inputJson string A declaração com a carga JSON útil. Essa declaração é usada pela transformação de declarações para obter o item dos dados JSON.
OutputClaim key string A primeira chave de elemento no JSON.
OutputClaim valor string O valor do primeiro elemento no JSON.

Exemplo de GetSingleItemFromJson

No exemplo a seguir, a transformação de declarações extrai o primeiro elemento (nome próprio) dos dados JSON.

<ClaimsTransformation Id="GetGivenNameFromResponse" TransformationMethod="GetSingleItemFromJson">
  <InputClaims>
    <InputClaim ClaimTypeReferenceId="json" TransformationClaimType="inputJson" />
  </InputClaims>
  <OutputClaims>
    <OutputClaim ClaimTypeReferenceId="givenNameKey" TransformationClaimType="key" />
    <OutputClaim ClaimTypeReferenceId="givenName" TransformationClaimType="value" />
  </OutputClaims>
</ClaimsTransformation>
  • Declarações de entrada:

    • inputJson:

      {
        "givenName": "Emily",
        "lastName": "Smith"
      }
      
  • Declarações de saída:

    • chave: givenName
    • valor: Emilty

GetSingleValueFromJsonArray

Obtém o primeiro elemento de uma matriz de dados JSON. Confira a demonstração ao vivo dessa transformação de reivindicações.

Elemento TransformationClaimType Tipo de Dados Notas
InputClaim inputJsonClaim string A declaração com a carga JSON útil. Essa declaração é usada pela transformação de declarações para obter o valor da matriz JSON.
OutputClaim extractedClaim string A declaração que é produzida após essa transformação de declarações ter sido invocada, o primeiro elemento na matriz JSON.

Exemplo de GetSingleValueFromJsonArray

No exemplo a seguir, a transformação de declarações extrai o primeiro elemento (endereço de email) da matriz ["someone@example.com", "Someone", 6353399]JSON.

<ClaimsTransformation Id="GetEmailFromJson" TransformationMethod="GetSingleValueFromJsonArray">
  <InputClaims>
    <InputClaim ClaimTypeReferenceId="userData" TransformationClaimType="inputJsonClaim" />
  </InputClaims>
  <OutputClaims>
    <OutputClaim ClaimTypeReferenceId="email" TransformationClaimType="extractedClaim" />
  </OutputClaims>
</ClaimsTransformation>
  • Declarações de entrada:
    • inputJsonClaim: ["someone@example.com", "Alguém", 6353399]
  • Declarações de saída:
    • extractedClaim: someone@example.com

XmlStringToJsonString

Converta dados XML para o formato JSON. Confira a demonstração ao vivo dessa transformação de reivindicações.

Elemento TransformationClaimType Tipo de Dados Notas
InputClaim xml string A declaração com a carga XML. Essa declaração é usada pela transformação de declarações para converter os dados do formato XML para JSON.
OutputClaim json string A declaração que é produzida após essa transformação de declarações foi invocada, os dados no formato JSON.
<ClaimsTransformation Id="ConvertXmlToJson" TransformationMethod="XmlStringToJsonString">
  <InputClaims>
    <InputClaim ClaimTypeReferenceId="intpuXML" TransformationClaimType="xml" />
  </InputClaims>
  <OutputClaims>
    <OutputClaim ClaimTypeReferenceId="outputJson" TransformationClaimType="json" />
  </OutputClaims>
</ClaimsTransformation>

Exemplo de XmlStringToJsonString

No exemplo a seguir, a transformação de declarações converte os seguintes dados XML para o formato JSON.

Alegação de entrada:

<user>
  <name>Someone</name>
  <email>someone@example.com</email>
</user>

Reivindicação de saída:

{
  "user": {
    "name":"Someone",
    "email":"someone@example.com"
  }
}

Próximos passos

  • Encontre mais exemplos de transformação de declarações no repositório GitHub da comunidade do Azure AD B2C