Estoy tratando de obtener los grupos de miembros del usuario al que pertenece el usuario usando azure graph api pero no devuelve el miembro en la api. Estoy usando auth0 para la autenticación.
Aquí está el código de script de Java que estoy usando.
function(accessToken, ctx, cb) { const jwt = require('jsonwebtoken@7.1.9'); console.log('azure - retrieve user profile'); // Retrieve the profile from Azure request.get( 'https://graph.microsoft.com/v1.0/me?$select=id,mail,givenName,surname,userPrincipalName,otherMails,department,memberOf', { headers: { 'Authorization': 'Bearer ' + accessToken, }, json: true }, function(e, r, profile) { if (e) { console.log('azure - error while retrieving user profile:'); console.log(e); return cb(e) } if (r.statusCode !== 200) { console.log('azure - error while retrieving user profile: ' + r.statusCode); return cb(new Error('StatusCode: ' + r.statusCode)); } console.log('azure - retrieved user profile.'); // Get the tenant id from the access token let decodedToken = jwt.decode(accessToken); let auth0Profile = { user_id: profile.id, given_name: profile.givenName, family_name: profile.surname, email: profile.mail || profile.otherMails[0] || profile.userPrincipalName, email_verified: true, name: profile.givenName + ' ' + profile.surname, tenant_id: decodedToken.tid, identification_value: decodedToken.tid, user_principal_name: profile.userPrincipalName, user_department: profile.department, user_member: profile.memberOf }; cb(null, auth0Profile); } ); }He agregado alcance (User.Read Directory.Read.All) en Auth0 para la llamada api. ¿Puede alguien decirme por qué no obtengo un miembro?
Si desea obtener grupos de miembros del usuario, junto con múltiples atributos , la consulta no arrojará los resultados esperados.
Intenté verificar la misma consulta en Microsoft Graph Explorer .
'https://graph.microsoft.com/v1.0/me?$select=id,mail,givenName,surname,userPrincipalName,otherMails,department,memberOf'Incluso para eso, excepto memberOf , todos los objetos se muestran:
Para obtener memberOf , debe consultar por separado como se muestra a continuación:
https://graph.microsoft.com/v1.0/me/memberOf
Por lo tanto, para la solución alternativa , puede utilizar la consulta anterior dándola por separado sin consultar con otros atributos.
Además, asegúrese de agregar los permisos GroupMember.Read.All en el ámbito como se menciona en este documento de Microsoft .
Encuentre los enlaces a continuación si son útiles: Ref1 , Ref2