Skip to content

Commit

Permalink
Update next-auth config to validate SIN and UID (#710)
Browse files Browse the repository at this point in the history
  • Loading branch information
krischarbonneau authored Aug 8, 2024
1 parent e070ea8 commit 34d5d44
Showing 1 changed file with 9 additions and 0 deletions.
9 changes: 9 additions & 0 deletions pages/api/auth/[...nextauth].ts
Original file line number Diff line number Diff line change
Expand Up @@ -100,6 +100,15 @@ export const authOptions: NextAuthOptions = {
checks: ['state', 'nonce'],
profile: async (profile) => {
profile = await decryptJwe(profile.userinfo_token, jwk)

//Validate SIN and UID to ensure they are not null and are alphanumeric
const sinRegex = /^[a-zA-Z0-9]+$/
if (profile.sin === null || !sinRegex.test(profile.sin)) {
logger.error('SIN is not valid')
} else if (profile.uid === null || !sinRegex.test(profile.uid)) {
logger.error('UID is not valid')
}

//Make call to msca-ng API to create user if it doesn't exist
axios
.post(
Expand Down

0 comments on commit 34d5d44

Please sign in to comment.