  def GetEffectiveFirewalls(self) -> List[Dict[str, Any]]:
    """Get the raw effective firewalls for every interface:
    https://cloud.google.com/compute/docs/reference/rest/v1/instances/getEffectiveFirewalls

    Returns:
      List[Dict[str, Any]]: The effective firewall rules per interface.
    """
    gce_instance_client = self.GceApi().instances() # pylint: disable=no-member
    instance_info = self.GetOperation()
    effective_firewalls = []

    for interface in instance_info.get('networkInterfaces', []):
      interface_name = interface['name']
      request = {
          'project': self.project_id,
          'instance': self.name,
          'zone': self.zone,
          'networkInterface': interface_name
      }
      # Safe to unpack, response not paginated.
      response = common.ExecuteRequest(
          gce_instance_client, 'getEffectiveFirewalls', request)[0]
      effective_firewalls.append({
          'interface_name': interface_name, 'firewalls': response
      })

    return effective_firewalls
Get the raw effective firewalls for every interface:
https://cloud.google.com/compute/docs/reference/rest/v1/instances/getEffectiveFirewalls

Returns:
List[Dict[str, Any]]: The effective firewall rules per interface.
libcloudforensics/providers/gcp/internal/compute.py