Расширение TFS / AzureDevOps получает уникальный идентификатор пользователя - PullRequest
0 голосов
/ 16 января 2020

Есть ли возможность запросить глобальный идентификатор пользователя через VSS SDK?

Я имею в виду, что можно использовать IdentitiesClient.readIdentity () с дескриптором, например. Но это даст объект с уникальным идентификатором только для данной Коллекции.

Если я вызываю это для другой Коллекции, он возвращает другой идентификатор.

Кстати, в фоновом режиме это вызывает: https://tfshost.com/tfs/_apis/Collection/Identities/System.Security.Principal.WindowsIdentity;..SID ...

Из браузера, если я вызываю ту же конечную точку без сбора: https://tfshost.com/tfs/_apis/Identities/System.Security.Principal.WindowsIdentity;..SID ...

Это даст мне глобально уникальный идентификатор. Но в SDK такой оболочки нет, и кажется, что у расширения нет разрешения вызывать эту глобальную конечную точку API.

Я бы хотел получить этот идентификатор через само расширение, потому что я использую JWT Аутентификация и сгенерированный токен также содержат этот идентификатор.

Чтобы я мог работать с удостоверениями TFS для текущего пользователя, отправляемого JWT Auth в сторонней службе.

1 Ответ

0 голосов
/ 03 февраля 2020

Мы можем использовать VSS.getWebContext().user.id, чтобы получить идентификатор для текущего пользователя через vss-web-extension-sdk.

Более подробно об этом API и SDK вы можете найти в следующих документах:

UserContext

Core Client SDK

vss-web-extension-sdk репозиторий на GitHub:

vss-web-extension-sdk

...