From 22d86fe57422834d62e748b68f9712a26fe61240 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Martin=20Darm=C3=BCntzel?= Date: Wed, 20 Apr 2022 06:51:29 +0000 Subject: [PATCH] saml: parses role of user as int. --- peertube-plugin-auth-saml2/main.js | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/peertube-plugin-auth-saml2/main.js b/peertube-plugin-auth-saml2/main.js index d7b2072..1e83edd 100644 --- a/peertube-plugin-auth-saml2/main.js +++ b/peertube-plugin-auth-saml2/main.js @@ -328,10 +328,16 @@ async function buildUser (settingsManager, samlUser) { let username = findInUser(samlUser, settings['username-property']) || '' username = username.replace(/[^a-z0-9._]/g, '_') + let sent_role = findInUser(samlUser, settings['role-property']) + let parsed_role = parseInt(sent_role, 10) + if (!Number.isSafeInteger(parsed_role)) { + parsed_role = undefined + } + return { username, email: findInUser(samlUser, settings['mail-property']), displayName: findInUser(samlUser, settings['display-name-property']), - role: findInUser(samlUser, settings['role-property']) + role: parsed_role } }