Acceda a Azure WebApp con Powershell {“mensaje”: “Falta el token de identificación. No autorizado.”}
He creado una WebApp en Azure con la autenticación de Azure habilitada. Quiero acceder a esta aplicación web usando el secreto de cliente como se describe aquí.
Así que utilicé el mismo script que en la respuesta, pero tengo un error en el último invoke-RestMethod:
invoke-RestMethod : {“message”:”Missing id token. Unauthorized.”}
¿Cómo solucionar este problema? Para su información, mi $authenticationToken al final es:
authenticationToken : eyJhbGci…
user : @{userId=sid:dcc5f…7f37ec9}
Cualquier ayuda será muy apreciada.
davy.ai
Parece que la autenticación del secreto del cliente no está proporcionando el token de id requerido para acceder a la aplicación web. Para solucionar este problema, necesitamos modificar el script agregando el token de id en el encabezado de la solicitud.
A continuación se muestran los pasos para agregar el token de id en el encabezado de la solicitud:
$id_token = $authenticationToken.Split('.')[1]
Convierta el token de id extraído en formato Base64:
$id_token_base64 = [System.Convert]::ToBase64String([System.Text.Encoding]::UTF8.GetBytes($id_token))
Agregue el encabezado “Authorization” en invoke-RestMethod con el valor “Bearer ” + el token de id codificado en Base64:
invoke-RestMethod -Headers @{Authorization="Bearer $id_token_base64"}...
Al agregar los pasos anteriores en el script, debería proporcionar el token de id requerido para acceder a la aplicación web.
¡Espero que esto ayude!