DCMTK  Version 3.6.1 20120515
OFFIS DICOM Toolkit
Public Member Functions | Static Public Member Functions | Private Member Functions
SiSecurityProfile Class Reference

abstract base class for all security profiles. More...

+ Inheritance diagram for SiSecurityProfile:

List of all members.

Public Member Functions

 SiSecurityProfile ()
 default constructor
virtual ~SiSecurityProfile ()
 destructor
virtual OFBool isAllowableMACType (E_MACType macType) const =0
 checks whether the given MAC type can be used with this security profile.
virtual OFBool isAllowableMAC (const SiMAC &mac) const
 checks whether the given MAC object can be used with this security profile.
virtual OFBool isAllowableAlgorithmType (E_KeyType keyType) const =0
 checks whether the given public/private key algorithm can be used with this security profile.
virtual OFBool isAllowableAlgorithm (const SiAlgorithm &algo) const
 checks whether the given public/private key object can be used with this security profile.
virtual OFBool isAllowableTransferSyntax (E_TransferSyntax xfer) const =0
 checks whether the given transfer syntax can be used with this security profile
virtual OFBool attributeRequired (const DcmTagKey &key) const =0
 checks whether an attribute with the given tag is required to be signed for the current security profile.
virtual OFBool attributeForbidden (const DcmTagKey &key) const =0
 checks whether an attribute with the given tag must not be signed for the current security profile.
virtual OFCondition updateAttributeList (DcmItem &item, DcmAttributeTag &tagList)
 updates the given list of attribute tags according to the requirements of the current security profile.
virtual OFBool checkAttributeList (DcmItem &item, DcmAttributeTag &tagList)
 checks whether the given list of attribute tags fulfils the requirements of the current security profile for the given dataset.

Static Public Member Functions

static OFBool containsTag (DcmAttributeTag &tagList, const DcmTagKey &key)
 checks if the given tag key is contained in the given list.

Private Member Functions

 SiSecurityProfile (SiSecurityProfile &arg)
 private undefined copy constructor
SiSecurityProfileoperator= (SiSecurityProfile &arg)
 private undefined copy assignment operator

Detailed Description

abstract base class for all security profiles.


Member Function Documentation

virtual OFBool SiSecurityProfile::attributeForbidden ( const DcmTagKey key) const [pure virtual]

checks whether an attribute with the given tag must not be signed for the current security profile.

Parameters:
keytag key to be checked
Returns:
true if attribute must not be signed, false otherwise.

Implemented in SiNullProfile, and SiBaseRSAProfile.

virtual OFBool SiSecurityProfile::attributeRequired ( const DcmTagKey key) const [pure virtual]

checks whether an attribute with the given tag is required to be signed for the current security profile.

Parameters:
keytag key to be checked
Returns:
true if required, false otherwise.

Implemented in SiNullProfile, SiBaseRSAProfile, SiAuthorizationProfile, and SiCreatorProfile.

virtual OFBool SiSecurityProfile::checkAttributeList ( DcmItem item,
DcmAttributeTag tagList 
) [virtual]

checks whether the given list of attribute tags fulfils the requirements of the current security profile for the given dataset.

Parameters:
itemdataset to be checked
tagListattribute tag list.
Returns:
true if minimum requirements for profile are fulfilled, false otherwise.
static OFBool SiSecurityProfile::containsTag ( DcmAttributeTag tagList,
const DcmTagKey key 
) [static]

checks if the given tag key is contained in the given list.

Parameters:
tagListlist of tag keys
keytag key
Returns:
true if tag key is present in list, false otherwise.
virtual OFBool SiSecurityProfile::isAllowableAlgorithm ( const SiAlgorithm algo) const [virtual]

checks whether the given public/private key object can be used with this security profile.

Parameters:
algoobject to be checked
Returns:
true if object is allowable for this profile, false otherwise.
virtual OFBool SiSecurityProfile::isAllowableAlgorithmType ( E_KeyType  keyType) const [pure virtual]

checks whether the given public/private key algorithm can be used with this security profile.

Parameters:
keyTypepublic key algorithm type to be checked
Returns:
true if public key algorithm is allowable for this profile, false otherwise.

Implemented in SiNullProfile, and SiBaseRSAProfile.

virtual OFBool SiSecurityProfile::isAllowableMAC ( const SiMAC mac) const [virtual]

checks whether the given MAC object can be used with this security profile.

Parameters:
macTypeobject to be checked
Returns:
true if object is allowable for this profile, false otherwise.
virtual OFBool SiSecurityProfile::isAllowableMACType ( E_MACType  macType) const [pure virtual]

checks whether the given MAC type can be used with this security profile.

Parameters:
macTypeMAC type to be checked
Returns:
true if MAC type is allowable for this profile, false otherwise.

Implemented in SiNullProfile, and SiBaseRSAProfile.

virtual OFBool SiSecurityProfile::isAllowableTransferSyntax ( E_TransferSyntax  xfer) const [pure virtual]

checks whether the given transfer syntax can be used with this security profile

Parameters:
xfertransfer syntax to be checked
Returns:
true if transfer syntax is allowable for this profile, false otherwise.

Implemented in SiNullProfile, and SiBaseRSAProfile.

virtual OFCondition SiSecurityProfile::updateAttributeList ( DcmItem item,
DcmAttributeTag tagList 
) [virtual]

updates the given list of attribute tags according to the requirements of the current security profile.

For all elements present in the dataset, the attribute tag is inserted or removed from the list if required by the profile.

Parameters:
itemdataset to be handled
tagListattribute tag list to be updated
Returns:
status code

The documentation for this class was generated from the following file:


Generated on Tue May 15 2012 for DCMTK Version 3.6.1 20120515 by Doxygen 1.7.5.1-20111027