Tiene una aplicación de una sola página (SPA) que llama a una API web de Azure App Service (API A). La API A debe llamar a una API posterior (API B) en nombre del usuario que ha iniciado sesión y aplicar los permisos del usuario en la API B. La API B ya expone ámbitos (scopes) en su registro de aplicación. Necesita preservar la identidad del usuario al llamar a la API B y evitar otorgar a la API A permisos de aplicación amplios. ¿Qué dos acciones debe realizar?
Elige una respuesta
Toca una opción para verificar tu respuesta.
Respuesta correcta: En la API A, use MSAL para intercambiar el token de usuario entrante por un token posterior llamando a AcquireTokenOnBehalfOf con el token de portador entrante como UserAssertion, y envíe ese token a la API B., En Azure AD, agregue la API B como un permiso delegado al registro de la aplicación de la API A y otorgue el consentimiento del administrador para los ámbitos requeridos..
Por qué esta es la respuesta
Para preservar la identidad del usuario y aplicar sus permisos en la API B, la API A debe realizar una adquisición de token "en nombre de" (On-Behalf-Of). Esto se logra usando MSAL y llamando a AcquireTokenOnBehalfOf con el token de usuario entrante como UserAssertion, obteniendo un nuevo token para la API B. Este token se envía a la API B, que lo valida y aplica los permisos del usuario. Además, la API A necesita permiso para llamar a la API B en nombre del usuario. Esto se configura en Azure AD agregando la API B como un permiso delegado al registro de la aplicación de la API A y otorgando consentimiento de administrador para los ámbitos necesarios. Cambiar a un flujo de credenciales de cliente (client credentials flow) haría que la API A llamara a la API B con su propia identidad, perdiendo la identidad del usuario. Configurar la API B para usar roles de aplicación no resuelve la necesidad de adquirir un token para la API B con la identidad del usuario, ya que la API B esperaría un token con su propia audiencia y los roles del usuario.
Aprueba tu examen — sin la interminable búsqueda de respuestas
Obtén todas las preguntas y explicaciones verificadas para este examen en un solo lugar, y ahorra horas de preparación. Más de 1,000 certificaciones · Más de 20 idiomas · Empieza gratis.
Aprueba tu examen más rápido → No se requiere tarjeta