Enable TLS support for gRPC client #1060
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Closes: #877
Description
Enable TLS support in Tonic, and add system trust roots to gRPC client.
How to test
To test this, we can use an HTTPS reverse proxy in front of the gRPC endpoint of one of the chains.
Start the chains with the
dev-env
scriptsPaste the following in a file named
Caddyfile
Caddy may prompt you for your password to install a local-only root CA.
We will remove this CA in step 8.
In the Hermes config, change the
grpc_addr
of chainibc-0
fromhttp://127.0.0.1:9090
tohttps://localhost:2020
Create a channel between
ibc-0
andibc-1
:The command should succeed and you should see the proxied requests in the terminal window running Caddy.
Run the following command to remove Caddy's root CA (it's a local-only CA so it should be safe but better remove it anyway if not in use)
For contributor use:
docs/
) and code comments.Files changed
in the Github PR explorer.