Condividi tramite


Trasformazioni delle attestazioni JSON

Importante

A partire dal 1° maggio 2025, Azure AD B2C non sarà più disponibile per l'acquisto per i nuovi clienti. Altre informazioni sono disponibili nelle domande frequenti.

Questo articolo fornisce esempi per l'uso delle trasformazioni delle attestazioni JSON dello schema di Identity Experience Framework in Azure Active Directory B2C (Azure AD B2C). Per altre informazioni, vedere Trasformazioni delle attestazioni.

CreateJsonArray

Creare una matrice a singolo elemento JSON da un valore di attestazione. Vedere la demo live di questa trasformazione delle attestazioni.

Elemento TransformationClaimType Tipo di dati Note
InputClaim inputClaim corda Attestazione da aggiungere all'attestazione di output.
Attestazione di produzione Richiesta di uscita corda Stringa JSON generata dopo la chiamata di questa trasformazione delle attestazioni.

Esempio di CreateJsonArray

L'esempio seguente crea una singola matrice JSON.

<ClaimsTransformation Id="CreateJsonPayload" TransformationMethod="CreateJsonArray">
  <InputClaims>
    <InputClaim ClaimTypeReferenceId="email" TransformationClaimType="inputClaim" />
  </InputClaims>
  <OutputClaims>
    <OutputClaim ClaimTypeReferenceId="result" TransformationClaimType="outputClaim" />
  </OutputClaims>
</ClaimsTransformation>
  • Attestazioni di input:
    • inputClaim: someone@example.com
  • Attestazioni di output:
    • outputClaim: ["someone@contoso.com"]

GenerateJson

Usare valori attestazioni o costanti per generare una stringa JSON. La stringa di percorso che segue la notazione del punto viene usata per indicare dove inserire i dati in una stringa JSON. Dopo la suddivisione per punti, tutti gli interi vengono interpretati come l'indice di una matrice JSON e non integer vengono interpretati come indice di un oggetto JSON.

Vedere la demo live di questa trasformazione delle attestazioni.

Elemento TransformationClaimType Tipo di dati Note
InputClaim Qualsiasi stringa che segue la notazione del punto corda JsonPath del codice JSON in cui verrà inserito il valore dell'attestazione.
Parametro di Input Qualsiasi stringa che segue la notazione del punto corda JsonPath del codice JSON in cui verrà inserito il valore della stringa costante.
Attestazione di produzione Richiesta di uscita corda Stringa JSON generata.

Matrici JSON

Per aggiungere oggetti JSON a una matrice JSON, usare il formato del nome della matrice e l'indice nella matrice. La matrice è in base zero. Iniziare con zero a N, senza ignorare alcun numero. Gli elementi nella matrice possono contenere qualsiasi oggetto. Ad esempio, il primo elemento contiene due oggetti, app e appId. Il secondo elemento contiene un singolo oggetto, programma. Il terzo elemento contiene quattro oggetti, colore, lingua, logo e sfondo.

L'esempio seguente illustra come configurare matrici JSON. La matrice di messaggi di posta elettronica usa con InputClaims valori dinamici. La matrice di valori usa con InputParameters valori statici.

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

Risultato della trasformazione delle attestazioni:

{
  "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"
    }
  ]
}

Per specificare una matrice JSON sia nelle attestazioni di input che nei parametri di input, è necessario avviare la matrice nell'elemento InputClaims , da zero a N. Quindi, nell'elemento continuare l'indice InputParameters dall'ultimo indice.

Nell'esempio seguente viene illustrata una matrice definita sia nelle attestazioni di input che nei parametri di input. Il primo elemento della è definito nelle attestazioni di input. I parametri di input continuano dall'indice uno values.1 a due indici 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>

Esempio di GenerateJson

L'esempio seguente genera una stringa JSON basata sul valore dell'attestazione "email" e "OTP" e sulle stringhe costanti.

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

La trasformazione delle attestazioni seguente restituisce un'attestazione stringa JSON che sarà il corpo della richiesta inviata a SendGrid (un provider di posta elettronica di terze parti). La struttura dell'oggetto JSON è definita dagli ID nella notazione con punti di InputParameters e TransformationClaimTypes di InputClaims. I numeri nella notazione punto implicano matrici. I valori provengono dai valori di InputClaims e dalle proprietà "Value" di InputParameters.

  • Attestazioni di input:
    • email, tipo di attestazione di trasformazione personalizations.0.to.0.email: "someone@example.com"
    • copiedEmail, tipo di attestazione di trasformazione personalizations.0.dynamic_template_data.verify-email: "someone@example.com"
    • otp, tipo di attestazione di trasformazione personalizations.0.dynamic_template_data.otp "346349"
  • Parametro di input:
    • template_id: "d-4c56ffb40fa648b1aa6822283df94f60"
    • from.email: "service@contoso.com"
    • personalizations.0.subject "Codice di verifica dell'account Contoso"
  • Attestazione di output:
    • Affermazione di uscita:

      {
        "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"
        }
      }
      

Un altro esempio di GenerateJson

L'esempio seguente genera una stringa JSON basata sui valori dell'attestazione e sulle stringhe costanti.

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

La trasformazione delle attestazioni seguente restituisce un'attestazione stringa JSON che sarà il corpo della richiesta inviata a un'API REST. La struttura dell'oggetto JSON è definita dagli ID nella notazione con punti di InputParameters e TransformationClaimTypes di InputClaims. I valori provengono dai valori di InputClaims e dalle proprietà "Value" di InputParameters.

  • Attestazioni di input:
    • email, tipo di attestazione di trasformazione customerEntity.email: "john.s@contoso.com"
    • objectId, tipo di attestazione di trasformazione customerEntity.userObjectId "aaaaa-0000-1111-2222-bbbbbbbbbb"
    • givenName, tipo di attestazione di trasformazione customerEntity.firstName "John"
    • cognome, tipo di attestazione trasformazione customerEntity.lastName "Smith"
  • Parametro di input:
    • customerEntity.role.name: "Amministratore"
    • customerEntity.role.id 1
  • Attestazione di output:
    • requestBody:

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

La trasformazione delle attestazioni GenerateJson accetta stringhe semplici. Se un'attestazione di input contiene una stringa JSON, tale stringa verrà preceduta da un escape. Nell'esempio seguente, se si usa l'output di posta elettronica di CreateJsonArray precedente, ovvero ["someone@contoso.com"], come parametro di input, il messaggio di posta elettronica sarà simile a quello illustrato nell'attestazione JSON seguente:

  • Attestazione di output:
    • requestBody:

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

GetClaimFromJson

Consente di ottenere un elemento specificato da un dato JSON. Vedere la demo live di questa trasformazione delle attestazioni.

Elemento TransformationClaimType Tipo di dati Note
InputClaim inputJson corda Attestazioni utilizzate dalla trasformazione delle attestazioni per ottenere l'elemento.
Parametro di Input claimToExtract corda il nome dell'elemento JSON da estrarre.
Attestazione di produzione estratto Reclamo corda Attestazione generata dopo che questa trasformazione delle attestazioni è stata richiamata, il valore dell'elemento specificato nel parametro di input claimToExtract .

Esempio di GetClaimFromJson

Nell'esempio seguente la trasformazione delle attestazioni ha estratto l'elemento emailAddress dai dati 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>
  • Attestazioni di input:
    • inputJson: {"emailAddress": "someone@example.com", "displayName": "Qualcuno"}
  • Parametro di input:
    • claimToExtract: indirizzo-email
  • Attestazioni di output:
    • estratto Affermazione: someone@example.com

Un altro esempio di GetClaimFromJson

La trasformazione delle attestazioni GetClaimFromJson ottiene un singolo elemento da dati JSON. Nell'esempio precedente, emailAddress. Per ottenere displayName, creare un'altra trasformazione delle attestazioni. Ad esempio:

<ClaimsTransformation Id="GetDisplayNameClaimFromJson" 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>
  • Attestazioni di input:
    • inputJson: {"emailAddress": "someone@example.com", "displayName": "Qualcuno"}
  • Parametro di input:
    • claimToExtract: displayName
  • Attestazioni di output:
    • extractedClaim: Qualcuno

GetClaimsFromJsonArray

Ottenere un elenco di elementi specificati dai dati JSON. Vedere la demo live di questa trasformazione delle attestazioni.

Elemento TransformationClaimType Tipo di dati Note
InputClaim jsonSourceClaim corda Attestazione con il payload JSON. Questa attestazione viene usata dalla trasformazione delle attestazioni per ottenere le attestazioni.
Parametro di Input errorOnMissingClaims booleano Specifica se generare un errore quando manca una delle attestazioni.
Parametro di Input includeEmptyClaims corda Specifica se includere attestazioni vuote.
Parametro di Input jsonNomeChiaveSorgente corda Nome della chiave dell'elemento
Parametro di Input jsonSourceValueName corda Nome del valore dell'elemento
Attestazione di produzione Raccolta string, int, boolean e datetime Elenco di attestazioni da estrarre. Il nome dell'attestazione deve essere uguale a quello specificato nell'attestazione di input jsonSourceClaim.

Esempio di GetClaimsFromJsonArray

Nell'esempio seguente la trasformazione delle attestazioni estrae le attestazioni seguenti: email (string), displayName (string), membershipNum (int), active (boolean) e birthDate (datetime) dai dati 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>
  • Attestazioni di input:

    • 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"
        }
      ]
      
  • Parametri di input.

    • errorOnMissingClaims: false
    • includeEmptyClaims: false
    • jsonSourceKeyName: chiave
    • jsonSourceValueName: valore
  • Attestazioni di output:

    • e-mail: "someone@example.com"
    • displayName: "Qualcuno"
    • ID di appartenenza: 6353399
    • attivo: true
    • data di nascita: 2005-09-23T00:00:00Z

GetClaimsFromJsonArrayV2

Ottenere un elenco di elementi specificati da una raccolta di stringhe elementi JSON. Vedere la demo live di questa trasformazione delle attestazioni.

Elemento TransformationClaimType Tipo di dati Note
InputClaim jsonSourceClaim Collezione di corde Attestazione di raccolta di stringhe con i payload JSON. Questa attestazione viene usata dalla trasformazione delle attestazioni per ottenere le attestazioni.
Parametro di Input errorOnMissingClaims booleano Specifica se generare un errore quando manca una delle attestazioni.
Parametro di Input includeEmptyClaims corda Specifica se includere attestazioni vuote.
Parametro di Input jsonNomeChiaveSorgente corda Nome della chiave dell'elemento
Parametro di Input jsonSourceValueName corda Nome del valore dell'elemento
Attestazione di produzione Raccolta string, int, boolean e datetime Elenco di attestazioni da estrarre. Il nome dell'attestazione deve essere uguale a quello specificato nell'attestazione di input jsonSourceClaim.

Esempio di GetClaimsFromJsonArrayV2

Nell'esempio seguente la trasformazione delle attestazioni estrae le attestazioni seguenti: email (string), displayName (string), membershipNum (int), active (boolean) e birthDate (datetime) dai dati 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>
  • Attestazioni di input:

    • jsonSourceClaim[0] (primo elemento della raccolta di stringhe):

        {
          "key": "email",
          "value": "someone@example.com"
        }
      
    • jsonSourceClaim[1] (secondo elemento della raccolta di stringhe):

        {
          "key": "displayName",
          "value": "Someone"
        }
      
    • jsonSourceClaim[2] (terza raccolta di stringhe):

        {
          "key": "membershipID",
          "value": 6353399
        }
      
    • jsonSourceClaim[3] (quarto elemento della raccolta string):

        {
          "key": "active",
          "value": true
        }
      
    • jsonSourceClaim[4] (quinto elemento della raccolta string):

        {
          "key": "birthDate",
          "value": "2005-09-23T00:00:00Z"
        }
      
  • Parametri di input.

    • errorOnMissingClaims: false
    • includeEmptyClaims: false
    • jsonSourceKeyName: chiave
    • jsonSourceValueName: valore
  • Attestazioni di output:

    • e-mail: "someone@example.com"
    • displayName: "Qualcuno"
    • ID di appartenenza: 6353399
    • attivo: true
    • data di nascita: 2005-09-23T00:00:00Z

GetNumericClaimFromJson

Consente di ottenere un elemento numerico (lungo) specificato da un dato JSON. Vedere la demo live di questa trasformazione delle attestazioni.

Elemento TransformationClaimType Tipo di dati Note
InputClaim inputJson corda Attestazione con il payload JSON. Questa attestazione viene usata dalla trasformazione delle attestazioni per ottenere l'attestazione numerica.
Parametro di Input claimToExtract corda Il nome dell'elemento JSON da estrarre.
Attestazione di produzione estratto Reclamo lungo Attestazione generata dopo la chiamata di questa trasformazione delle attestazioni, il valore dell'elemento specificato nei parametri di input claimToExtract .

Esempio di GetNumericClaimFromJson

Nell'esempio seguente la trasformazione delle attestazioni estrae l'elemento id dai dati 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>
  • Attestazioni di input:

    • inputJson:

      {
        "emailAddress": "someone@example.com",
        "displayName": "Someone",
        "id": 6353399
      }
      
  • Parametri di input

    • claimToExtract: id
  • Attestazioni di output:

    • estrattoRivendicazione: 6353399

GetSingleItemFromJson

Ottiene il primo elemento da dati JSON. Vedere la demo live di questa trasformazione delle attestazioni.

Elemento TransformationClaimType Tipo di dati Note
InputClaim inputJson corda Attestazione con il payload JSON. Questa attestazione viene usata dalla trasformazione delle attestazioni per ottenere l'elemento dai dati JSON.
Attestazione di produzione chiave corda La prima chiave dell'elemento nel codice JSON.
Attestazione di produzione valore corda Primo valore dell'elemento nel codice JSON.

Esempio di GetSingleItemFromJson

Nell'esempio seguente la trasformazione delle attestazioni estrae il primo elemento (nome specificato) dai dati 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>
  • Attestazioni di input:

    • inputJson:

      {
        "givenName": "Emily",
        "lastName": "Smith"
      }
      
  • Attestazioni di output:

    • chiave: givenName
    • valore: Emily

GetSingleValueFromJsonArray

Consente di ottenere il primo elemento da una matrice di dati JSON. Vedere la demo live di questa trasformazione delle attestazioni.

Elemento TransformationClaimType Tipo di dati Note
InputClaim inputJsonClaim corda Attestazione con il payload JSON. Questa attestazione viene usata dalla trasformazione delle attestazioni per ottenere il valore dalla matrice JSON.
Attestazione di produzione estratto Reclamo corda Attestazione generata dopo che è stata richiamata la trasformazione delle attestazioni, il primo elemento nella matrice JSON.

Esempio di GetSingleValueFromJsonArray

Nell'esempio seguente la trasformazione delle attestazioni estrae il primo elemento (indirizzo di posta elettronica) dalla matrice JSON ["someone@example.com", "Someone", 6353399].

<ClaimsTransformation Id="GetEmailFromJson" TransformationMethod="GetSingleValueFromJsonArray">
  <InputClaims>
    <InputClaim ClaimTypeReferenceId="userData" TransformationClaimType="inputJsonClaim" />
  </InputClaims>
  <OutputClaims>
    <OutputClaim ClaimTypeReferenceId="email" TransformationClaimType="extractedClaim" />
  </OutputClaims>
</ClaimsTransformation>
  • Attestazioni di input:
    • inputJsonClaim: ["someone@example.com", "Qualcuno", 6353399]
  • Attestazioni di output:
    • estratto Affermazione: someone@example.com

XmlStringToJsonString

Convertire i dati XML in formato JSON. Vedere la demo live di questa trasformazione delle attestazioni.

Elemento TransformationClaimType Tipo di dati Note
InputClaim XML corda Attestazione con il payload XML. Questa attestazione viene usata dalla trasformazione delle attestazioni per convertire i dati da XML in formato JSON.
Attestazione di produzione JSON corda Attestazione generata dopo la chiamata di questa trasformazione delle attestazioni, i dati in formato JSON.
<ClaimsTransformation Id="ConvertXmlToJson" TransformationMethod="XmlStringToJsonString">
  <InputClaims>
    <InputClaim ClaimTypeReferenceId="inputXML" TransformationClaimType="xml" />
  </InputClaims>
  <OutputClaims>
    <OutputClaim ClaimTypeReferenceId="outputJson" TransformationClaimType="json" />
  </OutputClaims>
</ClaimsTransformation>

Esempio di XmlStringToJsonString

Nell'esempio seguente la trasformazione delle attestazioni converte i dati XML seguenti nel formato JSON.

Attestazione di input:

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

Attestazione di output:

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

Passaggi successivi