Docs for HTTPS scenarios
- Dominant language
- C#
- Stars
- 9.6k
- Forks
- 933
- Avg merge
- 12d 18h
- Merged PRs (30d)
- 2
Description
I'm aggregating some notes here from a variety of issues, questions, discussions, etc. around the HTTPS/TLS capabilities of YARP. These should eventually be written up into a doc.
General:
- Inbound and outbound TLS are independent.
- TLS offloading = inbound HTTPS and outbound HTTP
- No tunneling support
Inbound
- server specific, link to docs for each, summarize capabilities, more details for kestrel as it has more extensibility
- SNI
- hot cert swapping (via SNI callback)
- TLS versions
- perfect score TLS config
- let's encrypt
- log/filter protocols after handshake
- advanced protocol filters before handshake
Outbound
- HTTPS enabled by specifying it in the destination server address
- uses the destination address host name by default. You'll get a TLS error if it's expecting the original host
- There's a transform rule to use the original host, or header transform to use an arbitrary host.
- needs valid certs
- customize HttpClient settings (not yet, https://github.com/microsoft/reverse-proxy/issues/137)
Contributor guide
Assessment
This issue has not been assessed yet.