Skip to content

proxy support required for use in private subnets without internet egress (PCI, IRAP, ISM, SOC2, ISO27018) #146

Open

Description

@chrisdlangton

I cannot use send grid to send email from a webserver that is in a private subnet.

The webserver is behind a load balancer for ingress and requires a proxy (allowed hosts list) for egress.

This workload must be compliant, so best practices in security are required. This network topology is baseline standard (but more commonly users will leave everything ooen and exposed) for the basics to meet compliance for CIS, PCI, IRAP, ISM, SOC2, ISO27018

This lib can be removed as redundant from my observation.
I suggest sendgrid use urllib to do HTTP instead of reinvent the wheel. if you need more features use requests instead of reinvent the aircraft.
Both of these options allow a per-request proxy setting AND most importantly they both respect the operating system proxy setting (on linux it is the env var http_proxy and https_proxy case insensitive).

I would appreciate some attention on this. thank you

Activity

  1. childish-sambino commented on Sep 14, 2020

    @childish-sambino
    Contributor

    This repo uses urllib but it does not expose its interfaces for adding request handlers:

    opener = urllib.build_opener()
    request = urllib.Request(
    self._build_url(query_params),
    headers=self.request_headers,
    data=data,
    )

    I think adding a proxies arg to def http_request which would just be passed to a new ProxyHandler that's passed to the opener would work. Then the interface would look similar to that of requests. This would not handle the env vars use case, but that may not be difficult.

    This issue has been added to our internal backlog to be prioritized. Pull requests and +1s on the issue summary will help it move up the backlog.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions