apollographql / apollographql/federation
Connecting Apollo Federation to its Subservice using Client Side Certificate
- Dominant language
- TypeScript
- Stars
- 725
- Forks
- 276
- Avg merge
- 1h 47m
- Merged PRs (30d)
- 1
Description
I have the following setup:
Client ---ssl---> Apollo Federation ---ssh(Client Cert required) ---> Subservice.
The Apollo Federation service list config look like following:
```
const gateway = new ApolloGateway({
serviceList: [
{ name: 'service1', url: 'https://remote.host.tld:1234/sub-service1' },
{ name: 'service2', url: 'https://another.host.tld:1234/sub-service2' }
]
});
```
One of the services requires Client side certificate, and I didn't find the way to pass the certificate. (Actually I hacked somehow into node.js code, but I'm sure it has to be a better way).
Please let me know, if there is an appropriate way to solve this task.
Contributor guide
Research direction
Start with the ApolloGateway serviceList configuration shown in the issue and trace how each subservice request is created. Determine where client certificates could be configured for a service requiring mutual TLS, then verify the behavior against a suitable gateway or service-request test. Done means the configured certificate is used for the affected subservice without modifying Node.js internals.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- typescript
- Domain
- api, backend, security
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 20/100