Skip to content

Anonymize objects on Retrieve

Vrinda edited this page Mar 27, 2023 · 1 revision

Overview

One may choose to apply an attribute coercion to anonymize objects which are retrieved to a destination. The de-identification of objects is done according to the Basic Application Level Confidentiality profile.

Configuration

Using Archive UI

  • Go to Menu -> Configuration -> Devices -> dcm4chee-arc -> Device Extension -> Archive Device Extension -> Child Objects.
  • Add a new Attribute Coercion. Give a suitable Name. Select DIMSE as C_STORE_RQ and DICOM Transfer Role as SCP. Select appropriate De-identification option and Save.

Using LDAP

  • One may either create a LDIF file

      version: 1
      
      dn: cn=anonymizeObjectsOnRetrieve,dicomDeviceName=dcm4chee-arc,cn=Devices,cn=DICOM Configuration,dc=dcm4che,dc=org
      objectClass: dcmArchiveAttributeCoercion
      cn: anonymizeObjectsOnRetrieve
      dcmDIMSE: C_STORE_RQ
      dicomTransferRole: SCP
      dcmDeIdentification: BasicApplicationConfidentialityProfile
    

    and import it to the LDAP Server by using the ldapadd command line utility or the LDIF Import... function of Apache Directory Studio

  • or directly use its New Entry... function to create corresponding Attribute Coercion entries. OR directly use the New Entry... function of Apache Directory Studio to create corresponding Export Rule entries on Device Level (e.g.: dicomDeviceName=dcm4chee-arc) or on Application Entity Level (e.g: dicomAETitle=DCM4CHEE) of the Archive Configuration.

One may refer to Archive Attribute Coercion to understand the description of attributes.

Go to the Control tab on Configuration page in archive UI and reload the configuration.

Testing

  • store objects to archive

    storescu -c DCM4CHEE@localhost:11112 /path-to-study-object.dcm
    

    and verify its attributes using UI or dcmdump tool.

    dcmdump /path-to-study-object.dcm
    
    428: (0008,0020) DA #8 [19950608] StudyDate
    476: (0008,0030) TM #8 [131646.0] StudyTime
    524: (0008,0050) SH #8 [THU9948] AccessionNumber
    576: (0008,0080) LO #26 [PORTLAND ADVENTIST MED. C] InstitutionName
    610: (0008,0090) PN #8 [S LISOOK] ReferringPhysicianName
    626: (0008,1010) SH #18 [GENESIS_HISPEED_RP] StationName
    652: (0008,1030) LO #10 [CHEST/ABD] StudyDescription
    670: (0010,0010) PN #16 [WILKINS^CHARLES] PatientName
    694: (0010,0020) LO #6 [GE0514] PatientID
    708: (0010,0030) DA #0 [] PatientBirthDate
    716: (0010,0040) CS #2 [M] PatientSex
    726: (0010,1010) AS #0 [] PatientAge
    734: (0010,1030) DS #2 [0] PatientWeight
    744: (0018,0010) LO #14 [180CC HYPAQUE] ContrastBolusAgent
    954: (0020,0010) SH #4 [1784] StudyID
    
  • Retrieve objects using movescu tool to storescp destination.

    storescp -b STORESCP:11115 
    
    movescu -c DCM4CHEE@localhost:11112 -m StudyInstanceUID=<StudyIUID> --dest STORESCP 
    

    Replace <StudyIUID> with value as required.

  • Use dcmdump tool to check that attributes are anonymized when received at the destination.

    dcmdump /path-to-study-object-retrieved-at-STORESCP.dcm
    
    444: (0008,0020) DA #8 [] StudyDate
    484: (0008,0030) TM #8 [] StudyTime
    520: (0008,0050) SH #8 [] AccessionNumber
    564: (0008,0080) LO #26 [REMOVED] InstitutionName
    580: (0008,0090) PN #8 [] ReferringPhysicianName
    588: (0008,1010) SH #18 [REMOVED] StationName
    604: (0010,0010) PN #16 [] PatientName
    612: (0010,0020) LO #6 [] PatientID
    620: (0010,0030) DA #0 [] PatientBirthDate
    628: (0010,0040) CS #2 [] PatientSex
    636: (0012,0062) CS #4 [YES] PatientIdentityRemoved
    756: (0018,0010) LO #8 [REMOVED] ContrastBolusAgent
    992: (0020,0010) SH #4 [] StudyID
    
Clone this wiki locally