No se puede obtener el token de portador de Azure AD para usarlo con la aplicación API

Tengo una aplicación MVC que necesita acceder a una aplicación API privada en Azure que está protegida con autenticación de Azure AD. Entonces, necesito obtener el token de portador de Azure AD, transferirlo aZumo-Auth token y úselo para acceder a la aplicación API.

Estoy pasando poreste tutorial y todo funciona bien hasta el punto en que necesito solicitar el tokenauthContext. Aquí está el fragmento de un código:

var authContext = new AuthenticationContext(
    "https://login.microsoftonline.com/MyADDomain.onmicrosoft.com");

ClientCredential credential = new ClientCredential(
    "04472E33-2638-FAKE-GUID-F826AF4928DB", 
    "OMYAPIKEY1x3BLAHEMMEHEHEHEHEeYSOMETHINGRc=");

// Get the AAD token.
var appIdUri = 
    "https://MyAppGateway-814485545465FAKE4d5a4532cd.azurewebsites.net/login/aad";

//var appIdUri = "https://MyADDomain.onmicrosoft.com/MyAppName";
//var appIdUri = "https://MyADDomain.onmicrosoft.com/";
//var appIdUri = "https://graph.windows.net";

AuthenticationResult result = 
    authContext.AcquireToken(appIdUri, credential); // <-- can't get the token from AD

// downhill from here
var aadToken = new JObject();
aadToken["access_token"] = result.AccessToken;
var appServiceClient = new AppServiceClient(
    "https://MyAppGateway-814485545465FAKE4d5a4532cd.azurewebsites.net/");

// Send the AAD token to the gateway and get a Zumo token
var appServiceUser = await appServiceClient.LoginAsync("aad", aadToken);

La línea conauthContext.AcquireToken(appIdUri, credential) es el que causa problemas

Como siappIdUri doyhttps://MyAppGateway-814485545465FAKE4d5a4532cd.azurewebsites.net/login/aad, Obtengo una excepción:

400: AdalServiceException: AADSTS50001: Recurso 'https://MyAppGateway-814485545465FAKE4d5a4532cd.azurewebsites.net/login/aad'no está registrado para la cuenta.

Pero esta línea exacta está en la lista deReply Url en la aplicación AD

Cuando trato de usarhttps://MyADDomain.onmicrosoft.com/MyAppName ohttps://MyADDomain.onmicrosoft.com/ comoappIdUri Recibo un mensaje de excepción diferente:

400: AdalServiceException: AADSTS50105: la aplicación '04472E33-2638-FAKE-GUID-F826AF4928DB' no está asignada a un rol para la aplicación 'https://MyADDomain.onmicrosoft.com/MyAppName'

O

400: AdalServiceException: AADSTS50105: la aplicación '04472E33-2638-FAKE-GUID-F826AF4928DB' no está asignada a un rol para la aplicación 'https://MyADDomain.onmicrosoft.com/'

En ambos casos tuve elApp ID URI en la aplicación AD establecida en 'https://MyADDomain.onmicrosoft.com/MyAppName'o'https://MyADDomain.onmicrosoft.com/'. Y ambos nombres en la lista deReply URL.

Finalmente, después de suficientes intentos, he puestohttps://graph.windows.net comoappIdUri y recuperé la ficha del portador. Pero el token se entregó con fecha de vencimiento en el pasado (aproximadamente 1 minuto en el pasado). Así que no podría hacer nada más con esto. Y consiguió401-Unauthenticated cuando trató de usar el token para iniciar sesión en la aplicación API.

¿Qué me estoy perdiendo?

Respuestas a la pregunta(1)

Su respuesta a la pregunta