Home > Class Reference > HSLIB namespace > HS.AU.HI.SecurityHeaders

HS.AU.HI.SecurityHeaders

class HS.AU.HI.SecurityHeaders extends HS.Util.SOAPClient.Base

Property Inventory (Including Private)

Method Inventory (Including Private)

Parameters

parameter DefaultUserID;
Deprecated parameter, use property instead
parameter DefaultUserQualifier;
Deprecated parameter, use property instead
parameter ProductName;
Deprecated parameter, use property instead
parameter ProductPlatform;
Deprecated parameter, use property instead
parameter ProductVersion;
Deprecated parameter, use property instead
parameter VendorID;
Deprecated parameter, use property instead
parameter VendorQualifier;
Deprecated parameter, use property instead

Properties (Including Private)

property DefaultUserID as %String [ InitialExpression = ##class(HS.Registry.Config).GetKeyValue("\AU\SecurityHeader\DefaultUserID") ];
User id. User must be authorised (by the organisation) to invoke the service. For Example: "p08158"
Property methods: DefaultUserIDDisplayToLogical(), DefaultUserIDGet(), DefaultUserIDIsValid(), DefaultUserIDLogicalToDisplay(), DefaultUserIDLogicalToOdbc(), DefaultUserIDNormalize(), DefaultUserIDSet()
property DefaultUserQualifier as %String [ InitialExpression = ##class(HS.Registry.Config).GetKeyValue("\AU\HI\SecurityHeader\DefaultUserQualifier","http://www.intersystems.com/id/healthshare/userid/1.0") ];
Default Qualifier for Userid. For Example: "http://ns.organisation.org.au/id/hiclientname/userid/1.0"
Property methods: DefaultUserQualifierDisplayToLogical(), DefaultUserQualifierGet(), DefaultUserQualifierIsValid(), DefaultUserQualifierLogicalToDisplay(), DefaultUserQualifierLogicalToOdbc(), DefaultUserQualifierNormalize(), DefaultUserQualifierSet()
property HIHeader as HS.AU.HI.Headers [ Final ];
Header to be included in SOAP request
Property methods: HIHeaderGet(), HIHeaderGetSwizzled(), HIHeaderIsValid(), HIHeaderNewObject(), HIHeaderSet()
property ProductName as %String [ InitialExpression = ##class(HS.Registry.Config).GetKeyValue("\AU\SecurityHeader\ProductName","HealthShare") ];
Name of the software product used to submit the message. This field is used to validate that the software has been successfully tested as part of the NOI process. For example: "National.eHealth.Transition.Authority.ReferencePlatform.1st.Edition"
Property methods: ProductNameDisplayToLogical(), ProductNameGet(), ProductNameIsValid(), ProductNameLogicalToDisplay(), ProductNameLogicalToOdbc(), ProductNameNormalize(), ProductNameSet()
property ProductPlatform as %String [ InitialExpression = ##class(HS.Registry.Config).GetKeyValue("\AU\SecurityHeader\ProductPlatform",$system.Version.GetPlatform()) ];
Platform on which the software product used to submit the message was hosted For Example: "Windows XP SP3"
Property methods: ProductPlatformDisplayToLogical(), ProductPlatformGet(), ProductPlatformIsValid(), ProductPlatformLogicalToDisplay(), ProductPlatformLogicalToOdbc(), ProductPlatformNormalize(), ProductPlatformSet()
property ProductVersion as %String [ InitialExpression = ##class(HS.Registry.Config).GetKeyValue("\AU\SecurityHeader\ProductVersion","PCEHR Module 1.2") ];
Version of the software product used to submit the message. This field is used to validate that the software has been successfully tested as part of the NOI process. For Example: "1.0.r1234"
Property methods: ProductVersionDisplayToLogical(), ProductVersionGet(), ProductVersionIsValid(), ProductVersionLogicalToDisplay(), ProductVersionLogicalToOdbc(), ProductVersionNormalize(), ProductVersionSet()
property VendorID as %String [ InitialExpression = ##class(HS.Registry.Config).GetKeyValue("\AU\HI\SecurityHeader\VendorID","ISA00001") ];
Vendor Id who has submitted the message. This field is used to validate that the software has been successfully tested as part of the NOI process. For example: "4561237"
Property methods: VendorIDDisplayToLogical(), VendorIDGet(), VendorIDIsValid(), VendorIDLogicalToDisplay(), VendorIDLogicalToOdbc(), VendorIDNormalize(), VendorIDSet()
property VendorQualifier as %String [ InitialExpression = ##class(HS.Registry.Config).GetKeyValue("\AU\HI\SecurityHeader\VendorQualifier","http://ns.electronichealth.net.au/id/hi/vendorid/1.0") ];
defaulted value of "http://ns.electronichealth.net.au/id/hi/vendorid/1.0"
Property methods: VendorQualifierDisplayToLogical(), VendorQualifierGet(), VendorQualifierIsValid(), VendorQualifierLogicalToDisplay(), VendorQualifierLogicalToOdbc(), VendorQualifierNormalize(), VendorQualifierSet()
property X509ForSigning as %SYS.X509Credentials [ Final ];
X509 Credientials object for signing the SOAP Request
Property methods: X509ForSigningGet(), X509ForSigningGetObject(), X509ForSigningGetObjectId(), X509ForSigningGetSwizzled(), X509ForSigningIsValid(), X509ForSigningNewObject(), X509ForSigningSet(), X509ForSigningSetObject(), X509ForSigningSetObjectId(), X509ForSigningUnSwizzle()

Methods (Including Private)

classmethod AddSecurity(pWebRequest As %SOAP.WebRequest = "", pEndPoint As HS.Registry.Service.SOAP, pRequest As HS.Message.XMLMessage) as %Status [ Language = objectscript ]
For signatures and encryption it is possible to override this code since there are different options - this is the standard Healthshare mechanism To define specific Security for a web service Create a class which extends HS.Util.SOAPClient.Base and Override the AddSecurity Class Method Add your class name to the Service Registry entry which you would like to run different security
method MoveParameters() [ Language = objectscript ]
classmethod OnValidateResponseHeaderValues(validator As HS.AU.HI.Headers, webMethod As %String) as %Status [ Language = objectscript ]
Customise this method if you want to check for specific values within the returning headers. For Example: ; check the returned header values here If validator.product.platform'="MedicareAustralia" { set tSC=$$$ERROR($$$GeneralError,"Unexpected product platform: "_validator.product.platform) }
method SetHeaderValues(pRequest As HS.Message.XMLMessage) as %Status [ Language = objectscript ]
Defines SOAP Header object from settings
method SetX509(pX509Alias) as %Status [ Language = objectscript ]
Set X509 credentials to use for signing request.
classmethod ValidateResponse(pWebRequest As %SOAP.WebClient, pSOAPAction As %String) as %Status [ Language = objectscript ]
Validates the header siganture, and calls a custom validation method callback.

Inherited Members

Inherited Properties (Including Private)

Inherited Methods (Including Private)

FeedbackOpens in a new window