Esempio n. 1
0
 def _setup_server_nodes(self):
     # to be called just before starting server since it needs all parameters to be setup
     self._set_endpoints()
     self._policies = [ua.SecurityPolicyFactory()]
     if self.certificate and self.private_key:
         self._set_endpoints(security_policies.SecurityPolicyBasic128Rsa15,
                             ua.MessageSecurityMode.SignAndEncrypt)
         self._policies.append(
             ua.SecurityPolicyFactory(
                 security_policies.SecurityPolicyBasic128Rsa15,
                 ua.MessageSecurityMode.SignAndEncrypt, self.certificate,
                 self.private_key))
         self._set_endpoints(security_policies.SecurityPolicyBasic128Rsa15,
                             ua.MessageSecurityMode.Sign)
         self._policies.append(
             ua.SecurityPolicyFactory(
                 security_policies.SecurityPolicyBasic128Rsa15,
                 ua.MessageSecurityMode.Sign, self.certificate,
                 self.private_key))
         self._set_endpoints(security_policies.SecurityPolicyBasic256,
                             ua.MessageSecurityMode.SignAndEncrypt)
         self._policies.append(
             ua.SecurityPolicyFactory(
                 security_policies.SecurityPolicyBasic256,
                 ua.MessageSecurityMode.SignAndEncrypt, self.certificate,
                 self.private_key))
         self._set_endpoints(security_policies.SecurityPolicyBasic256,
                             ua.MessageSecurityMode.Sign)
         self._policies.append(
             ua.SecurityPolicyFactory(
                 security_policies.SecurityPolicyBasic256,
                 ua.MessageSecurityMode.Sign, self.certificate,
                 self.private_key))
Esempio n. 2
0
    def _setup_server_nodes(self):
        # to be called just before starting server since it needs all parameters to be setup
        if ua.SecurityPolicyType.NoSecurity in self._security_policy:
            self._set_endpoints()
            self._policies = [ua.SecurityPolicyFactory()]

        if self._security_policy != [ua.SecurityPolicyType.NoSecurity]:
            if not (self.certificate and self.private_key):
                self.logger.warning("Endpoints other than open requested but private key and certificate are not set.")
                return

            if ua.SecurityPolicyType.NoSecurity in self._security_policy:
                self.logger.warning("Creating an open endpoint to the server, although encrypted endpoints are enabled.")

            if ua.SecurityPolicyType.Basic256Sha256_SignAndEncrypt in self._security_policy:
                self._set_endpoints(security_policies.SecurityPolicyBasic256Sha256,
                                    ua.MessageSecurityMode.SignAndEncrypt)
                self._policies.append(ua.SecurityPolicyFactory(security_policies.SecurityPolicyBasic256Sha256,
                                                               ua.MessageSecurityMode.SignAndEncrypt,
                                                               self.certificate,
                                                               self.private_key)
                                     )
            if ua.SecurityPolicyType.Basic256Sha256_Sign in self._security_policy:
                self._set_endpoints(security_policies.SecurityPolicyBasic256Sha256,
                                    ua.MessageSecurityMode.Sign)
                self._policies.append(ua.SecurityPolicyFactory(security_policies.SecurityPolicyBasic256Sha256,
                                                               ua.MessageSecurityMode.Sign,
                                                               self.certificate,
                                                               self.private_key)
                                     )
Esempio n. 3
0
    def _setup_server_nodes(self):
        super()._setup_server_nodes()
        if self._security_policy != [ua.SecurityPolicyType.NoSecurity]:
            if not (self.certificate and self.private_key):
                return

            if (ua.SecurityPolicyType.Basic128Rsa15_SignAndEncrypt
                    in self._security_policy):
                self._set_endpoints(
                    security_policies.SecurityPolicyBasic128Rsa15,
                    ua.MessageSecurityMode.SignAndEncrypt,
                )
                self._policies.append(
                    ua.SecurityPolicyFactory(
                        security_policies.SecurityPolicyBasic128Rsa15,
                        ua.MessageSecurityMode.SignAndEncrypt,
                        self.certificate,
                        self.private_key,
                    ))
            if ua.SecurityPolicyType.Basic128Rsa15_Sign in self._security_policy:
                self._set_endpoints(
                    security_policies.SecurityPolicyBasic128Rsa15,
                    ua.MessageSecurityMode.Sign,
                )
                self._policies.append(
                    ua.SecurityPolicyFactory(
                        security_policies.SecurityPolicyBasic128Rsa15,
                        ua.MessageSecurityMode.Sign,
                        self.certificate,
                        self.private_key,
                    ))
            if ua.SecurityPolicyType.Basic256_SignAndEncrypt in self._security_policy:
                self._set_endpoints(
                    security_policies.SecurityPolicyBasic256,
                    ua.MessageSecurityMode.SignAndEncrypt,
                )
                self._policies.append(
                    ua.SecurityPolicyFactory(
                        security_policies.SecurityPolicyBasic256,
                        ua.MessageSecurityMode.SignAndEncrypt,
                        self.certificate,
                        self.private_key,
                    ))
            if ua.SecurityPolicyType.Basic256_Sign in self._security_policy:
                self._set_endpoints(
                    security_policies.SecurityPolicyBasic256,
                    ua.MessageSecurityMode.Sign,
                )
                self._policies.append(
                    ua.SecurityPolicyFactory(
                        security_policies.SecurityPolicyBasic256,
                        ua.MessageSecurityMode.Sign,
                        self.certificate,
                        self.private_key,
                    ))
Esempio n. 4
0
    def _setup_server_nodes(self):
        # to be called just before starting server since it needs all parameters to be setup
        if "None" in self._security_policy:
            self._set_endpoints()
            self._policies = [ua.SecurityPolicyFactory()]
            if (len(self._security_policy)>1) and self.private_key:
                self.logger.warning("Creating an open endpoint to the server, although encrypted endpoints are enabled.")

        if self.certificate and self.private_key:
            if "Basic128Rsa15_SignAndEncrypt" in self._security_policy:
                self._set_endpoints(security_policies.SecurityPolicyBasic128Rsa15,
                                    ua.MessageSecurityMode.SignAndEncrypt)
                self._policies.append(ua.SecurityPolicyFactory(security_policies.SecurityPolicyBasic128Rsa15,
                                                           ua.MessageSecurityMode.SignAndEncrypt,
                                                           self.certificate,
                                                           self.private_key)
                                 )
            if "Basic128Rsa15_Sign" in self._security_policy:
                self._set_endpoints(security_policies.SecurityPolicyBasic128Rsa15,
                                    ua.MessageSecurityMode.Sign)
                self._policies.append(ua.SecurityPolicyFactory(security_policies.SecurityPolicyBasic128Rsa15,
                                                           ua.MessageSecurityMode.Sign,
                                                           self.certificate,
                                                           self.private_key)
                                 )
            if "Basic256_SignAndEncrypt" in self._security_policy:
                self._set_endpoints(security_policies.SecurityPolicyBasic256,
                                    ua.MessageSecurityMode.SignAndEncrypt)
                self._policies.append(ua.SecurityPolicyFactory(security_policies.SecurityPolicyBasic256,
                                                           ua.MessageSecurityMode.SignAndEncrypt,
                                                           self.certificate,
                                                           self.private_key)
                                 )
            if "Basic256_Sign" in self._security_policy:
                self._set_endpoints(security_policies.SecurityPolicyBasic256,
                                    ua.MessageSecurityMode.Sign)
                self._policies.append(ua.SecurityPolicyFactory(security_policies.SecurityPolicyBasic256,
                                                           ua.MessageSecurityMode.Sign,
                                                           self.certificate,
                                                           self.private_key)
                                 )