Derzeit Probleme beim Zugriff auf einen Web-API-Controller, der über das Attribut 'autherize' verfügt und bei Azure AD registriert ist. Momentan erhalte ich einen Token von ADAL.JS und versuche nun, einen Ajax-Aufruf an einen Test-Webapi zu machen, der einen Back-End-Dienst für meine Office-Addin-App ausführt. Ich habe Szenarien versucht, die ich beschreiben werde.Office-Add-in Authentifiziert nicht zu Webapi
Erste Szenario: Ich erstellt, um Web-Anwendung Einträge Azure Management-Portal, eine für mein Büro Add in App, damit ich ein Token, und das andere für meine Web-API kann ich es sperren zu trennen. Ich gab dann die Erlaubnis für meine Office-Add-Anwendung auf meiner Webapi, um mein Office-Add-in, um mit meiner Web-API zu sprechen. Ich bekomme einen 401 Status unbefugt.
Zweite Senario:
Da ich nicht autorisierte bekomme ich eine neue Anwendung in meinem Azure Management Portal zu machen ging und ein Token mit dem ADAL.js bekommen, aber wenn ich den gleichen Anruf an die WebAPI welche machen teile die gleiche Kundennummer wie meine Office-Addin-App bekomme ich immer noch einen 01-Status unbefugt.
Nicht sicher, was ich falsch mache, scheinen, als ob ich beide Möglichkeiten ausprobiert habe, aber keiner arbeitet für mich. Das ist mein Java-Script
window.config = {
tenant: variables.azureAD,
clientId: variables.clientId,
postLogoutRedirectUri: window.location.origin,
endpoints: {
sharePointUri: "https://" + tenant + ".sharepoint.com",
ContentCenterApi: "https://localhost:44334"
},
cacheLocation: "localStorage"
};
var authContext = new AuthenticationContext(config);
var isCallback = authContext.isCallback(window.location.hash);
authContext.handleWindowCallback();
if (isCallback && !authContext.getLoginError()) {
window.location = authContext._getItem(authContext.CONSTANTS.STORAGE.LOGIN_REQUEST);
}
function GetSharepointList(e) {
var authContext = new AuthenticationContext(config);
var user = authContext.getCachedUser();
if (!user) {
authContext.login();
}
else {
authContext.acquireToken(config.endpoints.sharePointUri, function (error, token) {
if (error || !token) {
console.log("ADAL error occurred: " + error);
return;
}
else {
var me = this;
//var SiteUrl = config.endpoints.sharePointUri + "/sites/Apps_Dev/ER_TestSite/";
$.ajax({
url: 'https://localhost:44334/api/Values/Get',
dataType: "json",
headers: {
"Authorization": "Bearer " + token,
"accept": "application/json;odata=verbose",
},
success: function (data) {
handleData(data);
}
}).done(function (response) {
console.log("Successfully fetched list from SharePoint.");
// var items = response.d.results;
//$("#contentPreview").append(items[0]);
}).fail(function (error) {
console.log("Fetching list from SharePoint failed.");
});
}
});
};
}