DCMTK
Version 3.6.7
OFFIS DICOM Toolkit
|
abstract base class for all security profiles. More...
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. More... | |
virtual OFBool | isAllowableMAC (const SiMAC &mac) const |
checks whether the given MAC object can be used with this security profile. More... | |
virtual OFBool | isAllowableAlgorithmType (E_KeyType keyType) const =0 |
checks whether the given public/private key algorithm can be used with this security profile. More... | |
virtual OFBool | isAllowableAlgorithm (const SiAlgorithm &algo) const |
checks whether the given public/private key object can be used with this security profile. More... | |
virtual OFBool | isAllowableTransferSyntax (E_TransferSyntax xfer) const =0 |
checks whether the given transfer syntax can be used with this security profile More... | |
virtual OFBool | attributeRequiredIfPresent (const DcmTagKey &key) const =0 |
checks whether an attribute with the given tag is required to be signed for the current security profile if the attribute is present in the dataset More... | |
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. More... | |
virtual OFCondition | updateAttributeList (DcmItem &item, DcmAttributeTag &tagList) |
updates the given list of attribute tags according to the requirements of the current security profile. More... | |
virtual OFCondition | createAttributeList (DcmItem &item, DcmAttributeTag &tagList) |
create a maximum list of attribute tags according to the requirements of the current security profile. More... | |
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. More... | |
virtual OFBool | checkRequiredAttributeList (DcmAttributeTag &tagList) const =0 |
checks whether all attributes that are required unconditionally to be signed in this profile are included in the given tagList. More... | |
virtual OFCondition | inspectSignatureDataset (DcmItem &item)=0 |
some digital signature profiles specify conditions under which certain attributes must be included into the signature. More... | |
virtual SiSignaturePurpose::E_SignaturePurposeType | getOverrideSignaturePurpose () const |
return the required digital signature purpose for this signature profile More... | |
virtual OFBool | mainDatasetRequired () const =0 |
returns true if this signature profile only applies to main dataset level More... | |
Static Public Member Functions | |
static OFBool | containsTag (DcmAttributeTag &tagList, const DcmTagKey &key) |
checks if the given tag key is contained in the given list. More... | |
Private Member Functions | |
SiSecurityProfile (SiSecurityProfile &arg) | |
private undefined copy constructor | |
SiSecurityProfile & | operator= (SiSecurityProfile &arg) |
private undefined copy assignment operator | |
abstract base class for all security profiles.
|
pure virtual |
checks whether an attribute with the given tag must not be signed for the current security profile.
key | tag key to be checked |
Implemented in SiNullProfile, and SiBaseRSAProfile.
|
pure virtual |
checks whether an attribute with the given tag is required to be signed for the current security profile if the attribute is present in the dataset
key | tag key to be checked |
Implemented in SiStructuredReportingVerificationProfile, SiStructuredReportingProfile, SiNullProfile, SiCreatorProfile, SiBaseRSAProfile, and SiAuthorizationProfile.
|
virtual |
checks whether the given list of attribute tags fulfils the requirements of the current security profile for the given dataset.
item | dataset to be checked |
tagList | attribute tag list. |
|
pure virtual |
checks whether all attributes that are required unconditionally to be signed in this profile are included in the given tagList.
taglist | attribute tag list |
Implemented in SiStructuredReportingVerificationProfile, SiStructuredReportingProfile, SiNullProfile, SiCreatorProfile, SiBaseRSAProfile, and SiAuthorizationProfile.
|
static |
checks if the given tag key is contained in the given list.
tagList | list of tag keys |
key | tag key |
|
virtual |
create a maximum 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 if permitted by the profile.
item | dataset to be handled |
tagList | attribute tag list to be created |
|
virtual |
return the required digital signature purpose for this signature profile
Reimplemented in SiStructuredReportingVerificationProfile.
|
pure virtual |
some digital signature profiles specify conditions under which certain attributes must be included into the signature.
This method allows the signature profile to inspect the dataset in order to determine whether or not the conditions are met. This method should be called before DcmSignature::createSignature() is executed.
item | the dataset or item to which the signature will be added |
Implemented in SiStructuredReportingVerificationProfile, SiStructuredReportingProfile, SiNullProfile, SiCreatorProfile, SiBaseRSAProfile, and SiAuthorizationProfile.
|
virtual |
checks whether the given public/private key object can be used with this security profile.
algo | object to be checked |
|
pure virtual |
checks whether the given public/private key algorithm can be used with this security profile.
keyType | public key algorithm type to be checked |
Implemented in SiNullProfile, and SiBaseRSAProfile.
|
virtual |
checks whether the given MAC object can be used with this security profile.
mac | macType object to be checked |
|
pure virtual |
checks whether the given MAC type can be used with this security profile.
macType | MAC type to be checked |
Implemented in SiNullProfile, and SiBaseRSAProfile.
|
pure virtual |
checks whether the given transfer syntax can be used with this security profile
xfer | transfer syntax to be checked |
Implemented in SiNullProfile, and SiBaseRSAProfile.
|
pure virtual |
returns true if this signature profile only applies to main dataset level
Implemented in SiStructuredReportingProfile, SiNullProfile, SiCreatorProfile, SiBaseRSAProfile, and SiAuthorizationProfile.
|
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.
item | dataset to be handled |
tagList | attribute tag list to be updated |