【问题标题】:TFS / AzureDevOps extension get unique user identityTFS / AzureDevOps 扩展获得唯一的用户身份
【发布时间】:2020-05-03 10:17:32
【问题描述】:

是否有可能通过 VSS SDK 请求用户的全局 ID?

我的意思是可以将 IdentitiesClient.readIdentity() 与描述符一起使用。但这会给出一个 ID 仅在给定 Collection 上唯一的对象。

如果我在另一个 Collection 上调用它,它会返回另一个 id。

顺便说一句,这是在后台调用: https://tfshost.com/tfs/_apis/Collection/Identities/System.Security.Principal.WindowsIdentity;..SID...

如果我在没有收集的情况下调用相同的端点,则从浏览器: https://tfshost.com/tfs/_apis/Identities/System.Security.Principal.WindowsIdentity;..SID...

它将给我一个全球唯一的 id。但是在 SDK 中没有这样的包装器,并且似乎扩展没有权限调用这个全局 api 端点。

我想通过扩展本身获取这个 id,因为我正在使用 JWT 身份验证,并且生成的令牌也包含这个 id。

这样我就可以针对由 JWT Auth 在 3rd 方服务中发送的当前用户使用 TFS 身份。

【问题讨论】:

    标签: javascript tfs azure-devops azure-devops-rest-api vssdk


    【解决方案1】:

    我们可以使用VSS.getWebContext().user.id 通过vss-web-extension-sdk 获取当前用户的身份。

    关于这个API和SDK的更多细节,你可以参考以下文档:

    UserContext

    Core Client SDK

    GitHub 上的 vss-web-extension-sdk 存储库:

    vss-web-extension-sdk

    【讨论】:

      猜你喜欢
      • 2018-10-01
      • 2012-08-19
      • 1970-01-01
      • 1970-01-01
      • 2014-09-22
      • 2012-09-06
      • 2014-05-26
      • 2015-09-01
      • 1970-01-01
      相关资源
      最近更新 更多