parse-community / parse-community/parse-server
Facebook auth adapter appSecret cannot be set per app ID
Nobody has claimed this yet.
- Dominant language
- JavaScript
- Stars
- 21.4k
- Forks
- 4.8k
- Avg merge
- 7h 45m
- Merged PRs (30d)
- 11
Description
New Issue Checklist
- I am not disclosing a vulnerability.
- I am not just asking a question.
- I have searched through existing issues.
- I can reproduce the issue with the latest version of Parse Server.
Issue Description
The Facebook auth adapter takes two config options:
appIds: type of array of stringsappSecret: type of string
While it's possible to set multiple appIds, it's only possible to set one appSecret. Every Facebook app has its own secret, which means that appSecret can only be used if appIds only has a single array element, i.e. Parse Server is configured to support only one Facebook app.
Steps to reproduce
n/a
Actual Outcome
It's not possible to set a secret per Facebook app ID.
Expected Outcome
It should be possible to set a secret per Facebook app ID, e.g. with the following config:
auth: {
facebook: {
apps: [
{
id: 'id1',
secret: 'secret1'
},
{
id: 'id2',
secret: 'secret2'
}
]
}
}
As this is a breaking change, Parse Server should temporarily accept the apps option in addition to the current config options, which should be deprecated.
Environment
Server
- Parse Server version:
5.3.0-alpha.26
References
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
Use the Facebook auth adapter's current appIds/appSecret handling as the entry point. Compare the proposed apps structure with existing configuration compatibility requirements and identify coverage for both new per-app secrets and deprecated options. Done means multiple Facebook app IDs can each authenticate with their own secret while existing configuration remains temporarily accepted.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- javascript
- Domain
- authentication
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 32/100