View Issue Details
ID | Project | Category | View Status | Date Submitted | Last Update |
---|---|---|---|---|---|
0004153 | Compliance Test Tool (CTT) Unified Architecture | 1 - Script Issue | public | 2018-02-08 08:08 | 2019-08-09 15:53 |
Reporter | Adrian Scholl | Assigned To | Alexander Allmendinger | ||
Priority | normal | Severity | minor | Reproducibility | always |
Status | closed | Resolution | fixed | ||
Platform | x86 | OS | Windows | OS Version | 7 |
Product Version | 1.03.340.380 | ||||
Target Version | 1.03 | Fixed in Version | 1.03.341.381 | ||
Summary | 0004153: Session Base ignores the Basic256Sha256 security profile | ||||
Description | Session Base ignores the Basic256Sha256 security profile. Within the initialize.js a secure endpoint is searched. Here the Basic256Sha256 policiy is excluded from the result. As a result servers only supporting the Basic256Sha256 policy will skip the Session Base tests that need secure connection. As the CTT now supports this policy this restriction is not needed anymore. | ||||
Steps To Reproduce | Connect to an OPC UA Server supporing only the Basic256Sha256 policy. | ||||
Additional Information | . | ||||
Tags | No tags attached. | ||||
Attached Files | SessionBase_initialize_Basic256Sha256.patch (3,722 bytes)
Index: initialize.js =================================================================== --- initialize.js (revision 22021) +++ initialize.js (revision 22022) @@ -1,37 +1,37 @@ -include( "./library/Base/safeInvoke.js" ); -include( "./library/Base/array.js" ); -include( "./library/Base/SettingsUtilities/NodeIds.js" ); -include( "./library/ServiceBased/Helpers.js" ); - -const SKIP_NOSECUREENDPOINT = "No secure endpoints available. Skipping test."; - -// global endpoint objects for secure and insecure channels -var epSecureChNone, epSecureEncrypt; - - -function openDefaultChannel() { - return( Test.Connect( { SkipCreateSession: true } ) ); -} - -function openSecureChannel() { - return( Test.Connect( { SkipCreateSession: true, - OpenSecureChannel: { - RequestedSecurityPolicyUri: epSecureEncrypt.SecurityPolicyUri, - MessageSecurityMode:epSecureEncrypt.SecurityMode } } ) ); -} - - -if( openDefaultChannel() ) { - // find a secure endpoint and an insecure endpoint; store them variables for easy access by our test-scripts - for( var e=0; e<gServerCapabilities.Endpoints.length; e++ ) { - // We are not interested in the HTTP protocol, so filter those out. - var strEndpoint = gServerCapabilities.Endpoints[e].EndpointUrl; - if( strEndpoint.substring( 0, 4 ) == "http" ) continue; - // find a secure endpoint, with username/password - if( gServerCapabilities.Endpoints[e].SecurityMode === MessageSecurityMode.SignAndEncrypt ) { - if( gServerCapabilities.Endpoints[e].SecurityPolicyUri != SecurityPolicy.policyToString( SecurityPolicy.Basic256Sha256 ) ) epSecureEncrypt = gServerCapabilities.Endpoints[e]; - } - // find an endpoint with no message security - if( gServerCapabilities.Endpoints[e].SecurityMode === MessageSecurityMode.None ) epSecureChNone = gServerCapabilities.Endpoints[e]; - } +include( "./library/Base/safeInvoke.js" ); +include( "./library/Base/array.js" ); +include( "./library/Base/SettingsUtilities/NodeIds.js" ); +include( "./library/ServiceBased/Helpers.js" ); + +const SKIP_NOSECUREENDPOINT = "No secure endpoints available. Skipping test."; + +// global endpoint objects for secure and insecure channels +var epSecureChNone, epSecureEncrypt; + + +function openDefaultChannel() { + return( Test.Connect( { SkipCreateSession: true } ) ); +} + +function openSecureChannel() { + return( Test.Connect( { SkipCreateSession: true, + OpenSecureChannel: { + RequestedSecurityPolicyUri: epSecureEncrypt.SecurityPolicyUri, + MessageSecurityMode:epSecureEncrypt.SecurityMode } } ) ); +} + + +if( openDefaultChannel() ) { + // find a secure endpoint and an insecure endpoint; store them variables for easy access by our test-scripts + for( var e=0; e<gServerCapabilities.Endpoints.length; e++ ) { + // We are not interested in the HTTP protocol, so filter those out. + var strEndpoint = gServerCapabilities.Endpoints[e].EndpointUrl; + if( strEndpoint.substring( 0, 4 ) == "http" ) continue; + // find a secure endpoint, with username/password + if( gServerCapabilities.Endpoints[e].SecurityMode === MessageSecurityMode.SignAndEncrypt ) { + epSecureEncrypt = gServerCapabilities.Endpoints[e]; + } + // find an endpoint with no message security + if( gServerCapabilities.Endpoints[e].SecurityMode === MessageSecurityMode.None ) epSecureChNone = gServerCapabilities.Endpoints[e]; + } } \ No newline at end of file | ||||
Files Affected | |||||
|
The attached patch applies to maintree/Session Services/Session Base/Test Cases/initialize.js. |
|
reviewed in CTT - agreed to target 1.03 |
|
Followed the suggestion from Adrian Scholl. |
|
Review in CMP call |
Date Modified | Username | Field | Change |
---|---|---|---|
2018-02-08 08:08 | Adrian Scholl | New Issue | |
2018-02-08 08:08 | Adrian Scholl | File Added: SessionBase_initialize_Basic256Sha256.patch | |
2018-02-08 08:10 | Adrian Scholl | Note Added: 0008861 | |
2018-02-22 17:17 | Paul Hunkar | Note Added: 0008888 | |
2018-02-22 17:17 | Paul Hunkar | Target Version | => 1.03 |
2018-02-22 17:17 | Paul Hunkar | Assigned To | => Alexander Allmendinger |
2018-02-22 17:17 | Paul Hunkar | Status | new => assigned |
2018-08-05 21:53 | Alexander Allmendinger | Note Added: 0009265 | |
2018-08-05 21:53 | Alexander Allmendinger | Status | assigned => resolved |
2018-08-05 21:53 | Alexander Allmendinger | Fixed in Version | => 1.03.341.381 |
2018-08-05 21:53 | Alexander Allmendinger | Resolution | open => fixed |
2019-01-28 14:10 | Paul Hunkar | Category | Script Issue => 1 - Script Issue |
2019-08-09 15:53 | Paul Hunkar | Status | resolved => closed |
2019-08-09 15:53 | Paul Hunkar | Note Added: 0010743 |