function (user, context, callback) { var namespace = 'http://yourdomain/claims/'; // You can set your own namespace, but do not use an Auth0 domain // Add the namespaced tokens. Remove any which is not necessary for your scenario context.idToken[namespace + "permissions"] = user.permissions; context.idToken[namespace + "groups"] = user.groups; context.idToken[namespace + "roles"] = user.roles; callback(null, user, context);}
function (user, context, callback) { context.clientMetadata = context.clientMetadata || {}; if (context.clientMetadata.required_roles && context.clientMetadata.required_roles.length){ if (user.roles) { var _ = require('lodash'); var roles = context.clientMetadata.required_roles.split(','); var matchingRoles =_.filter(user.roles, function(roleName) { return _.includes(roles, roleName); }); if (matchingRoles && matchingRoles.length) { return callback(null, user, context); } } return callback(new UnauthorizedError('You do not have the required role to access ' + context.clientName)); } callback(null, user, context);}