I need to send a copy of my MongoDB to Sitecore Support for investigation. For security reasons I want all sensitive data to be anonymized.

Fields I'm talking about are: FirstName, LastName, Addresses and Email addresses.

Is there an easy and fast way to do this?

My Contacts collection contains around 350.000 entries.

  • Have you taken a look at github.com/sunitparekh/data-anonymization to see if this will work for your needs? Looks like a Ruby project that specializes in data-anonymization and has MongoDB support/example. I haven't used this before, so I can't comment on how well it works Sep 13, 2017 at 19:17
  • That looks like a good long term solution. Now I just want a quick way to do it. I've tested Dmytro's answer and it works.
    – Koen Heye
    Sep 13, 2017 at 20:12

1 Answer 1


You can mass-replace personal data right from the MongoDB console:

var i = 0;
db.Contacts.find({}, {_id: 1}).forEach(function(contact) {
  db.Contacts.update({_id: contact._id}, {$set: {
    "Personal.FirstName": "RandomFirstName" + i,
    "Personal.Surname": "RandomSurname" + i
    /* etc. for other personal data */

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.