Я пытаюсь получить простой образец adal.js для запуска с базовым проектом mvc asp.net core (без атрибутов авторизации). Когда я бегу ниже, меня перенаправляют в AAD, как и ожидалось, я щелкаю своего пользователя, а затем я вскоре перенаправляюсь обратно на свою страницу, а затем обратно в диалоговое окно входа в AAD. Я получаю сообщение «Требуется вход в систему». Есть идеи, что я здесь делаю неправильно?
var variables = {
// Domain of Azure AD tenant
azureAD: "xx.onmicrosoft.com",
// ClientId of Azure AD application principal
clientId: "xx-xx-xx-xx"
}
window.config = {
tenant: variables.azureAD,
clientId: variables.clientId,
postLogoutRedirectUri: window.location.origin,
cacheLocation: "localStorage",
endpoints: {
graphApiUri: "https://graph.microsoft.com"
},
};
var authContext = new AuthenticationContext(config);
var user = authContext.getCachedUser();
if (!user) {
authContext.login();
}
authContext.acquireToken(config.endpoints.graphApiUri, function (error, token) {
if (error || !token) {
console.info("ADAL error occurred: " + error);
return;
}
else {
}
});
Находятся ли они в одном проекте или код пользовательского интерфейса - это отдельный проект от API?
Он находится в том же проекте.





Похоже, что вы не обрабатываете перенаправление из Azure AD в своем приложении. Вам нужно будет вызвать метод handleWindowCallback(), предоставляемый Adal.js, чтобы убедиться, что idtoken, возвращаемый Azure AD в URI перенаправления, проанализирован и кэширован, чтобы указать контекст аутентифицированного пользователя.
Для фрагмента кода взгляните на этот образец с использованием ADAL.js в простом приложении Javascript с серверной частью asp.net.
Спасибо, оценил!
Какую версию ADAL.js вы используете?