2

我目前正在使用 TFS 2013(本地)。我无法找到一种方法来以编程方式查询在服务器级别的控制面板的“访问级别”选项卡中设置的“利益相关者”、“基本”和“高级”用户列表,或者,给定有效的 TeamFoundationIdentity,找出它们对应的访问级别是什么。是否有可能做到这一点?

我对使用 SDK 非常熟悉,尽管在查找用户和安全性时才合理。例如,我知道如何列出服务器上的所有项目集合有效用户。

TfsConfigurationServer configurationServer

IIdentityManagementService ims = configurationServer.GetService<IIdentityManagementService>();

TeamFoundationIdentity[][] identities = ims.ReadIdentities(IdentitySearchFactor.AccountName,
        new[] { "Project Collection Valid Users" }, MembershipQuery.Expanded, ReadIdentityOptions.ExtendedProperties);

任何帮助将不胜感激,谢谢。

4

2 回答 2

0

您可以使用 REST 客户端 API 读取用户的访问级别。

String collectionUri = "https://{account}.visualstudio.com";
VssCredentials creds = new VssClientCredentials();
creds.Storage = new VssClientCredentialStorage();
VssConnection connection = new VssConnection(new Uri(collectionUri), creds);
var licensingHttpClient = connection.GetClient<LicensingHttpClient>();
var accountEntitlement = licensingHttpClient.GetAccountEntitlementAsync().Result;
var license = accountEntitlement.License;
于 2018-06-21T14:46:37.517 回答
0

不,这是不可能的。

似乎没有关于如何使用 TFS API 查询和编辑服务器访问级别的官方文档。

请参考以下类似帖子中的讨论: https ://social.msdn.microsoft.com/Forums/vstudio/en-US/222245c1-5f72-4daa-bc0f-a038ee363bd8/querying-tfs-user-access-level-通过对象模型?forum=tfsgeneral

于 2015-10-23T09:57:44.537 回答