Beispiel #1
0
 def _restore_firewall(self, context, edge_id, response):
     res = {}
     res['firewall_rule_list'] = []
     for rule in response['firewallRules']['firewallRules']:
         rule_binding = (
             nsxv_db.get_nsxv_edge_firewallrule_binding_by_vseid(
                 context.session, edge_id, rule['ruleId']))
         if rule_binding is None:
             continue
         service = rule['application']['service'][0]
         src_port_range = self._get_port_range_from_min_max_ports(
             service['sourcePort'][0], service['sourcePort'][-1])
         dst_port_range = self._get_port_range_from_min_max_ports(
             service['port'][0], service['port'][-1])
         item = {
             'firewall_rule': {
                 'id': rule_binding['rule_id'],
                 'source_ip_address': rule['source']['ipAddress'],
                 'destination_ip_address': rule['destination']['ipAddress'],
                 'protocol': service['protocol'],
                 'destination_port': dst_port_range,
                 'source_port': src_port_range,
                 'action': self._restore_firewall_action(rule['action']),
                 'enabled': rule['enabled']
             }
         }
         if rule.get('name'):
             item['firewall_rule']['name'] = rule['name']
         if rule.get('description'):
             item['firewall_rule']['description'] = rule['description']
         res['firewall_rule_list'].append(item)
     return res
Beispiel #2
0
 def _restore_firewall_rule(self, context, edge_id, response):
     rule = response
     rule_binding = nsxv_db.get_nsxv_edge_firewallrule_binding_by_vseid(
         context.session, edge_id, rule['ruleId'])
     service = rule['application']['service'][0]
     src_port_range = self._get_port_range_from_min_max_ports(
         service['sourcePort'][0], service['sourcePort'][-1])
     dst_port_range = self._get_port_range_from_min_max_ports(
         service['port'][0], service['port'][-1])
     fw_rule = {
         'firewall_rule': {
             'id': rule_binding['rule_id'],
             'source_ip_address': rule['source']['ipAddress'],
             'destination_ip_address': rule['destination']['ipAddress'],
             'protocol': service['protocol'],
             'destination_port': dst_port_range,
             'source_port': src_port_range,
             'action': self._restore_firewall_action(rule['action']),
             'enabled': rule['enabled']
         }
     }
     if rule.get('name'):
         fw_rule['firewall_rule']['name'] = rule['name']
     if rule.get('description'):
         fw_rule['firewall_rule']['description'] = rule['description']
     return fw_rule
 def _restore_firewall(self, context, edge_id, response):
     res = {}
     res['firewall_rule_list'] = []
     for rule in response['firewallRules']['firewallRules']:
         rule_binding = (
             nsxv_db.get_nsxv_edge_firewallrule_binding_by_vseid(
                 context.session, edge_id, rule['ruleId']))
         if rule_binding is None:
             continue
         service = rule['application']['service'][0]
         src_port_range = self._get_port_range_from_min_max_ports(
             service['sourcePort'][0], service['sourcePort'][-1])
         dst_port_range = self._get_port_range_from_min_max_ports(
             service['port'][0], service['port'][-1])
         item = {
             'firewall_rule': {
                 'id': rule_binding['rule_id'],
                 'source_ip_address': rule['source']['ipAddress'],
                 'destination_ip_address': rule[
                     'destination']['ipAddress'],
                 'protocol': service['protocol'],
                 'destination_port': dst_port_range,
                 'source_port': src_port_range,
                 'action': self._restore_firewall_action(rule['action']),
                 'enabled': rule['enabled']}}
         if rule.get('name'):
             item['firewall_rule']['name'] = rule['name']
         if rule.get('description'):
             item['firewall_rule']['description'] = rule['description']
         res['firewall_rule_list'].append(item)
     return res
    def _restore_firewall_rule(self, context, edge_id, rule):
        fw_rule = {}
        rule_binding = nsxv_db.get_nsxv_edge_firewallrule_binding_by_vseid(
            context.session, edge_id, rule['ruleId'])
        if rule_binding:
            fw_rule['id'] = rule_binding['rule_id']

        fw_rule['ruleId'] = rule['ruleId']
        if rule.get('source'):
            src = rule['source']
            fw_rule['source_ip_address'] = src['ipAddress']
            fw_rule['source_vnic_groups'] = src['vnicGroupId']

        if rule.get('destination'):
            dest = rule['destination']
            fw_rule['destination_ip_address'] = dest['ipAddress']
            fw_rule['destination_vnic_groups'] = dest['vnicGroupId']

        if 'application' in rule and 'service' in rule['application']:
            service = rule['application']['service'][0]
            fw_rule['protocol'] = service['protocol']
            if service.get('sourcePort'):
                fw_rule['source_port'] = self._get_port_range(
                    service['sourcePort'][0], service['sourcePort'][-1])
            if service.get('destination_port'):
                fw_rule['destination_port'] = self._get_port_range(
                    service['port'][0], service['port'][-1])

        fw_rule['action'] = self._restore_firewall_action(rule['action'])
        fw_rule['enabled'] = rule['enabled']
        if rule.get('name'):
            fw_rule['name'] = rule['name']
        if rule.get('description'):
            fw_rule['description'] = rule['description']
        return fw_rule
 def _restore_firewall_rule(self, context, edge_id, response):
     rule = response
     rule_binding = nsxv_db.get_nsxv_edge_firewallrule_binding_by_vseid(
         context.session, edge_id, rule['ruleId'])
     service = rule['application']['service'][0]
     src_port_range = self._get_port_range_from_min_max_ports(
         service['sourcePort'][0], service['sourcePort'][-1])
     dst_port_range = self._get_port_range_from_min_max_ports(
         service['port'][0], service['port'][-1])
     fw_rule = {
         'firewall_rule': {
             'id': rule_binding['rule_id'],
             'source_ip_address': rule['source']['ipAddress'],
             'destination_ip_address': rule['destination']['ipAddress'],
             'protocol': service['protocol'],
             'destination_port': dst_port_range,
             'source_port': src_port_range,
             'action': self._restore_firewall_action(rule['action']),
             'enabled': rule['enabled']}}
     if rule.get('name'):
         fw_rule['firewall_rule']['name'] = rule['name']
     if rule.get('description'):
         fw_rule['firewall_rule']['description'] = rule['description']
     return fw_rule