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 |