Расширение TFS - TF400813: пользователь ... не авторизован для доступа к этому ресурсу - PullRequest
0 голосов
/ 05 июля 2018

Я разрабатываю расширение TFS, в котором пытаюсь получить доступ к API остальных панелей мониторинга.

Расширению назначены почти все области действия:

  "scopes": [
    "vso.build_execute",
    "vso.code_write",
    "vso.code_manage",
    "vso.dashboards_manage",
    "vso.dashboards",
    "vso.extension_manage",
    "vso.extension.data_write",
    "vso.gallery_manage",
    "vso.identity",
    "vso.notification_manage",
    "vso.packaging_manage",
    "vso.profile",
    "vso.project",
    "vso.project_manage",
    "vso.release_manage"
  ],

Приведенный ниже код выполняет вызов API:

var webContext = VSS.getWebContext();
console.log(`Collection URI: ${webContext.collection.uri}`);
console.log(`Project Name: ${webContext.project.name}`);
console.log(`User uniquename: ${webContext.user.uniqueName} id: ${webContext.user.id}`);
var baseUri = webContext.collection.uri + "/" + webContext.project.name;
var endpointUri = baseUri + "/_apis/dashboard/dashboards";
console.log(endpointUri);
var authToken = vssAuthentificationService.authTokenManager.getAuthorizationHeader(token);
console.log(authToken);
$.ajax({
    type: "GET",
    url: endpointUri,
    contentType: 'application/json',
    dataType: 'json',
    headers: { 'Authorization': authToken }
})
    .done(function (data) {
        console.log(data);
    });

, который возвращает:

401 (Unauthorized); TF400813: The user ... is not authorized to access this resource  

Если я изменю URI API на:

var endpointUri = baseUri + "/_apis/build/builds";  

ответ в порядке.

Пользователь, использующий расширение, является администратором коллекции TFS.

Какие разрешения / области мне нужно установить, чтобы иметь доступ к API инструментальных панелей?

TFS версия 16.131.27701.1

1 Ответ

0 голосов
/ 06 июля 2018

Пожалуйста, проверьте, есть ли у вас {team} в вашей базе, это необходимо. Остальные API должны выглядеть следующим образом:

GET https://{accountName}.visualstudio.com/{project}/{team}/_apis/dashboard/dashboards?api-version=4.1-preview.2
...