Kundgruppsnamn, segment och kampanjregelinformation som visas via GraphQL

I den här artikeln finns en snabbkorrigering som förhindrar exponering av kundgruppsnamn, kundsegment och kampanjregelinformation via GraphQL. Problemet är schemalagt att åtgärdas i Adobe Commerce 2.4.8-p1.

Beskrivning description

Berörda produkter och versioner

Korrigeringen har skapats för Adobe Commerce-version:

  • Adobe Commerce (alla distributionsmetoder) 2.4.8

Kompatibel med Adobe Commerce-versioner:

  • Adobe Commerce (alla distributionsmetoder) 2.4.8

Problem

För Storefront Personalization Drop-ins introducerades nya GraphQL-mutationer för att visa grundläggande information som kundgruppsnamn, segment, kundvagn och katalogregler. Detta kan emellertid visa känsliga data, t.ex. erbjudandeinformation eller kupongkoder, om de ingår i namnen.

Steg som ska återskapas

Fall I: Katalogregel

  1. Gå till Marknadsföring på sidofältet Admin > Katalogprisregel > Lägg till ny regel.

  2. Definiera regelvillkoren (till exempel produktattribut eller kategori).

  3. Spara och använd regeln.

  4. Se till att en produkt uppfyller regelvillkoren.

  5. Kör följande GraphQL-fråga för att hämta alla regler:

    code language-none
    query {
        allCatalogRules {
            name
        }
    }
    
  6. Fråga en produkt för att verifiera om regeln gäller:

    code language-none
    query {
        products(filter: { sku: { eq: "product-sku" } }) {
            items {
                name
                rules {
                    name
                }
            }
        }
    }
    

Fall II: Versionsregel

  1. Gå till Marknadsföring på sidofältet Admin > Kundprisregel > Lägg till ny regel.

  2. Ange villkor som minsta kundvagnsvärde och kundgrupp.

  3. Spara och använd regeln.

  4. Lägg till produkter i kundvagnen för att utlösa regeln.

  5. Använd GraphQL för att verifiera alla kundvagnsregler:

    code language-none
    query {
        allCartRules {
            name
        }
    }
    
  6. Kontrollera om regler har tillämpats på den aktiva kundvagnen:

    code language-none
    query {
        cart(cart_id: "your-cart-id") {
            rules {
                name
            }
        }
    }
    

Fall III: Kundgrupp

  1. Gå till Kunder på sidofältet Admin > Kundgrupper.

  2. Kontrollera att de förväntade grupperna finns.

  3. Använd GraphQL för att hämta alla grupper:

    code language-none
    query {
        allCustomerGroups {
            name
        }
    }
    
  4. Verifiera kundens/gästens grupp:

    code language-none
    query {
        customerGroup {
            name
        }
    }
    

Fall IV: Kundsegment (endast för Adobe Commerce)

  1. Gå till Kunder på sidofältet Admin > Kundsegment > Lägg till segment.

  2. Definiera kundbaserade villkor (t.ex. order, kundvagnsinnehåll).

  3. Tilldela relevant omfång: Besökare, Registrerad eller båda.

  4. Se till att villkoren matchar en testkund.

  5. Använd GraphQL för att kontrollera alla segment:

    code language-none
    query {
        allCustomerSegments {
            name
            apply_to
        }
    }
    
  6. Validera de segment som används i en kundvagn:

    code language-none
    query {
        customerSegments(cartId: "your-cart-id") {
            name
        }
    }
    

Förväntat resultat:

Namn på kundgrupper, segment och kampanjregelinformation visas inte via GraphQL.

Faktiskt resultat:

Namnen på kundgrupper, segment och kampanjregelinformation visas via GraphQL.

Upplösning resolution

Använd de bifogade patcharna beroende på vilken version av Adobe Commerce du har:

recommendation-more-help
3d58f420-19b5-47a0-a122-5c9dab55ec7f