Class ActiveParticipantType

java.lang.Object
org.openehealth.ipf.commons.audit.model.ActiveParticipantType
All Implemented Interfaces:
Serializable, Validateable

public class ActiveParticipantType extends Object implements Serializable, Validateable
Since:
3.5
Author:
Christian Ohr
See Also:
  • Constructor Details

    • ActiveParticipantType

      public ActiveParticipantType(String userId, boolean userIsRequestor)
  • Method Details

    • getRoleIDCodes

      public List<ActiveParticipantRoleId> getRoleIDCodes()
      Specification of the role(s) the user plays when performing the event, as assigned in role-based access control security.
      Returns:
      the role(s) the user plays when performing the event
    • validate

      public void validate()
      Description copied from interface: Validateable
      Validates the constructed audit message against the specification, because API does not completely prevent constructing incomplete or inconsistent messages.
      Specified by:
      validate in interface Validateable
    • equals

      public boolean equals(Object o)
      Overrides:
      equals in class Object
    • canEqual

      protected boolean canEqual(Object other)
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class Object
    • isUserIsRequestor

      public boolean isUserIsRequestor()

      Indicator that the user is or is not the requestor, or initiator, for the event being audited.

      Used to identify which of the participants initiated the transaction being audited. If the audit source cannot determine which of the participants is the requestor, then the field shall be present with the value FALSE in all participants. The system shall not identify multiple participants as UserIsRequestor. If there are several known requestors, the reporting system shall pick only one as UserIsRequestor.

    • setUserIsRequestor

      public void setUserIsRequestor(boolean userIsRequestor)

      Indicator that the user is or is not the requestor, or initiator, for the event being audited.

      Used to identify which of the participants initiated the transaction being audited. If the audit source cannot determine which of the participants is the requestor, then the field shall be present with the value FALSE in all participants. The system shall not identify multiple participants as UserIsRequestor. If there are several known requestors, the reporting system shall pick only one as UserIsRequestor.

    • getUserID

      @NonNull public @NonNull String getUserID()

      Unique identifier for the user actively participating in the event.

      If the participant is a person, then the User ID shall be the identifier used for that person on this particular system, in the form of loginName@domain-name. If the participant is an identifiable process, the UserID selected shall be one of the identifiers used in the internal system logs. For example, the User ID may be the process ID as used within the local operating system in the local system logs. If the participant is a node, then User ID may be the node name assigned by the system administrator. Other participants such as threads, relocatable processes, web service end-points, web server dispatchable threads, etc. will have an appropriate identifier.

      The implementation shall document in the conformance statement the identifiers used, see Section A.6. The purpose of this requirement is to allow matching of the audit log identifiers with internal system logs on the reporting systems.

      When importing or exporting data, e.g., by means of media, the UserID field is used both to identify people and to identify the media itself. When the Role ID Code is EV(110154, DCM, "Destination Media") or EV(110155, DCM, "Source Media"), the UserID may be:

      • a URI (the preferred form) identifying the source or destination
      • an email address of the form "mailto:user@address"
      • a description of the media type (e.g., DVD) together with a description of its identifying label, as a free text field
      • a description of the media type (e.g., paper, film) together with a description of the location of the media creator (i.e., the printer)

      The UserID field for Media needs to be highly flexible given the large variety of media and transports that might be used.

    • setUserID

      public void setUserID(@NonNull @NonNull String userID)

      Unique identifier for the user actively participating in the event.

      If the participant is a person, then the User ID shall be the identifier used for that person on this particular system, in the form of loginName@domain-name. If the participant is an identifiable process, the UserID selected shall be one of the identifiers used in the internal system logs. For example, the User ID may be the process ID as used within the local operating system in the local system logs. If the participant is a node, then User ID may be the node name assigned by the system administrator. Other participants such as threads, relocatable processes, web service end-points, web server dispatchable threads, etc. will have an appropriate identifier.

      The implementation shall document in the conformance statement the identifiers used, see Section A.6. The purpose of this requirement is to allow matching of the audit log identifiers with internal system logs on the reporting systems.

      When importing or exporting data, e.g., by means of media, the UserID field is used both to identify people and to identify the media itself. When the Role ID Code is EV(110154, DCM, "Destination Media") or EV(110155, DCM, "Source Media"), the UserID may be:

      • a URI (the preferred form) identifying the source or destination
      • an email address of the form "mailto:user@address"
      • a description of the media type (e.g., DVD) together with a description of its identifying label, as a free text field
      • a description of the media type (e.g., paper, film) together with a description of the location of the media creator (i.e., the printer)

      The UserID field for Media needs to be highly flexible given the large variety of media and transports that might be used.

    • getAlternativeUserID

      public String getAlternativeUserID()

      Alternative unique identifier for the user.

      If the participant is a person, then Alternative User ID shall be the identifier used for that person within an enterprise for authentication purposes, for example, a Kerberos Username (user@realm). If the participant is a DICOM application, then Alternative User ID shall be one or more of the AE Titles that participated in the event.

      Multiple AE titles shall be encoded as:

       AETITLES= aetitle1;aetitle2;…
       

      When importing or exporting data, e.g., by means of media, the Alternative UserID field is used either to identify people or to identify the media itself. When the Role ID Code is (110154, DCM, "Destination Media") or (110155, DCM, "Source Media"), the Alternative UserID may be any machine readable identifications on the media, such as media serial number, volume label, or DICOMDIR SOP Instance UID.

    • setAlternativeUserID

      public void setAlternativeUserID(String alternativeUserID)

      Alternative unique identifier for the user.

      If the participant is a person, then Alternative User ID shall be the identifier used for that person within an enterprise for authentication purposes, for example, a Kerberos Username (user@realm). If the participant is a DICOM application, then Alternative User ID shall be one or more of the AE Titles that participated in the event.

      Multiple AE titles shall be encoded as:

       AETITLES= aetitle1;aetitle2;…
       

      When importing or exporting data, e.g., by means of media, the Alternative UserID field is used either to identify people or to identify the media itself. When the Role ID Code is (110154, DCM, "Destination Media") or (110155, DCM, "Source Media"), the Alternative UserID may be any machine readable identifications on the media, such as media serial number, volume label, or DICOMDIR SOP Instance UID.

    • getUserName

      public String getUserName()
      A human readable identification of the participant. If the participant is a person, the person's name shall be used. If the participant is a process, then the process name shall be used.
    • setUserName

      public void setUserName(String userName)
      A human readable identification of the participant. If the participant is a person, the person's name shall be used. If the participant is a process, then the process name shall be used.
    • getNetworkAccessPointID

      public String getNetworkAccessPointID()

      An identifier for the network access point of the user device This could be a device id, IP address, or some other identifier associated with a device.

      The NetworkAccessPointTypeCode and NetworkAccessPointID can be ambiguous for systems that have multiple physical network connections. For these multi-homed nodes a single DNS name or IP address shall be selected and used when reporting audit events. DICOM does not require the use of a specific method for selecting the network connection to be used for identification, but it must be the same for all of the audit messages generated for events on that node.

    • setNetworkAccessPointID

      public void setNetworkAccessPointID(String networkAccessPointID)

      An identifier for the network access point of the user device This could be a device id, IP address, or some other identifier associated with a device.

      The NetworkAccessPointTypeCode and NetworkAccessPointID can be ambiguous for systems that have multiple physical network connections. For these multi-homed nodes a single DNS name or IP address shall be selected and used when reporting audit events. DICOM does not require the use of a specific method for selecting the network connection to be used for identification, but it must be the same for all of the audit messages generated for events on that node.

    • getNetworkAccessPointTypeCode

      public NetworkAccessPointTypeCode getNetworkAccessPointTypeCode()
      An identifier for the type of network access point.
    • setNetworkAccessPointTypeCode

      public void setNetworkAccessPointTypeCode(NetworkAccessPointTypeCode networkAccessPointTypeCode)
      An identifier for the type of network access point.
    • getMediaIdentifier

      public String getMediaIdentifier()
      Volume ID, URI, or other identifier for media. Often required if digital media. May be present otherwise.
    • setMediaIdentifier

      public void setMediaIdentifier(String mediaIdentifier)
      Volume ID, URI, or other identifier for media. Often required if digital media. May be present otherwise.
    • getMediaType

      public MediaType getMediaType()
    • setMediaType

      public void setMediaType(MediaType mediaType)