Skip to content

Commit 7533fe6

Browse files
committed
security: enforce client_secret on PKCE token exchange
1 parent 43dd481 commit 7533fe6

1 file changed

Lines changed: 3 additions & 0 deletions

File tree

‎server.js‎

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -333,6 +333,9 @@ app.post('/oauth/token', (req, res) => {
333333
if (!OAUTH_CLIENT_ID || !AUTH_TOKEN) { res.status(500).json({ error: 'server_misconfigured' }); return; }
334334
const grant_type = req.body.grant_type;
335335
if (grant_type === 'authorization_code') {
336+
if (req.body.client_id !== OAUTH_CLIENT_ID || req.body.client_secret !== OAUTH_CLIENT_SECRET) {
337+
res.status(401).json({ error: 'invalid_client' }); return;
338+
}
336339
const { code, code_verifier, redirect_uri } = req.body;
337340
const stored = authCodes[code];
338341
if (!stored || stored.expiresAt < Date.now()) { res.status(400).json({ error: 'invalid_grant' }); return; }

0 commit comments

Comments
 (0)