Ana içeriğe atla

Groovy Script

import groovy.json.JsonOutput

def parser = new groovy.json.JsonSlurper()
def jsonResp = parser.parseText(responseBodyTextToClient)

static String mask(String input, int exceptFirst, int exceptLast) {
    String regex="(?<=.{" + exceptFirst + "}).(?=.{"+ exceptLast + "})"
    return input.replaceAll(regex, "*")
}

for(Object data in jsonResp.data) {
    data.ADI = mask(data.ADI, 1, 2)
    data.SOYADI = mask(data.SOYADI, 1, 2)
    data.NUMARA = mask(data.NUMARA, 1, 2)
}

responseBodyTextToClient=JsonOutput.prettyPrint(JsonOutput.toJson(jsonResp))

Açıklama

Bu script:
  1. JSON Parse İşlemi: Gelen cevabı (responseBodyTextToClient) JSON formatında parse eder.
  2. Mask Fonksiyonu: Verilen string’in ilk ve son karakterlerini koruyarak ortadaki karakterleri * ile maskeler.
  3. Veri İşleme: JSON içindeki data array’inde döngü yaparak her bir elemanın ADI, SOYADI ve NUMARA alanlarını maskeler.
  4. Sonuç: İşlenmiş JSON’u tekrar string formatına çevirerek cevap olarak döner.
Bu yaklaşım, hassas verilerin güvenli bir şekilde iletilmesini sağlar.
Bu script, response hattında (Response Policy) çalıştırılmalıdır çünkü responseBodyTextToClient değişkenini kullanmaktadır.