vocab_mapper: don't log input data
Nobody has claimed this yet.
- Dominant language
- Jupyter Notebook
- Stars
- 5
- Forks
- 10
- Avg merge
- 2d 20h
- Merged PRs (30d)
- 17
Description
The vocab mapper currently logs the raw input data. But this means that if we submit any user's API keys, they're freely available to anyone reading the server logs.
Solutions:
- don't log raw input, only log formatted input
- redact any sensitive values in the input
Maybe a wider point here is: perhaps the Apollo server should have a system for automatically logging all raw inputs for data purposes. We can use an input.credentials object and only log the keys of that, rather than the values. Or log partial values actually, the last 5 characters or so. That way, individual services don't have to worry about this stuff, and the official guideline can be "don't ever log raw input data".
It would be useful debugging to see a hint of the API key's value
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start at the vocab_mapper logging path and inspect how the Apollo server handles input.credentials. Determine whether the fix should stop raw-input logging or introduce redaction, then verify that API keys and other sensitive values are absent or safely represented in server logs.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- graphql
- Domain
- backend-api-design, security
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100