如何使用 SDK 或 Web Api 在 Azure DevOps 中将管理员添加到团队?
How add administrator to team in Azure DevOps using SDK or Web Api?
我尝试使用 SDK 创建团队。它在没有任何成员和管理员的情况下创建它:
WebApiTeam team = new WebApiTeam
{
Name = "New Team",
ProjectId = project.Id
};
然后打电话
public virtual Task<WebApiTeam> CreateTeamAsync(WebApiTeam team, string projectId, object userState = null, CancellationToken cancellationToken = default);
因此,我有一个名为“新团队”的团队,没有任何成员和管理员。
然后我将成员添加到团队中:
public Task<bool> AddMemberToGroupAsync(IdentityDescriptor containerId, Guid memberId, object userState = null, CancellationToken cancellationToken = default);
containerId = myNewTeam.id;
memberId=(user || group).id;
但是如何将管理员添加到团队 idk 中。
我发现当我们手动执行此操作时,它会调用
http://{baseUrl}/tfs/{project}/{teamId}/_api/_identity/AddTeamAdmins?__v=5
我尝试使用邮递员调用它,但我无法授权。有谁知道我该如何解决这个问题?
您可以通过为用户分配对团队安全命名空间的正确权限来实现。下面是一个将两个用户作为管理员添加到新团队的示例。
$myOrg = "https://dev.azure.com/myOrg/"
$newTeam = "My New Team"
$newAdmin = "user1@me.com"
$myProject = "My Project"
az login
$team = az devops team create --name $newTeam --org $myOrg --project $myProject | ConvertFrom-Json
$user = az devops user show --user $newAdmin --organization $myOrg | ConvertFrom-Json
az devops security group membership add --group-id $team.identity.subjectDescriptor --member-id $user.user.descriptor --org $myOrg
az devops security permission update --id "5a27515b-ccd7-42c9-84f1-54c998f03866" --subject $user.user.principalName --token "$($team.projectId)$($team.id)" --allow-bit 31 --org $myOrg
如果您使用的是 tfs,则需要注意 Azure DevOps 命令行界面 (CLI) 可用于 Azure DevOps Server 2020 和 Azure DevOps Services。这表示 here.
I try to call this using postman but I can't authorize
您需要使用具有完整范围的 PAT 进行认证。
这是我的测试:
我尝试使用 SDK 创建团队。它在没有任何成员和管理员的情况下创建它:
WebApiTeam team = new WebApiTeam
{
Name = "New Team",
ProjectId = project.Id
};
然后打电话
public virtual Task<WebApiTeam> CreateTeamAsync(WebApiTeam team, string projectId, object userState = null, CancellationToken cancellationToken = default);
因此,我有一个名为“新团队”的团队,没有任何成员和管理员。 然后我将成员添加到团队中:
public Task<bool> AddMemberToGroupAsync(IdentityDescriptor containerId, Guid memberId, object userState = null, CancellationToken cancellationToken = default);
containerId = myNewTeam.id;
memberId=(user || group).id;
但是如何将管理员添加到团队 idk 中。 我发现当我们手动执行此操作时,它会调用
http://{baseUrl}/tfs/{project}/{teamId}/_api/_identity/AddTeamAdmins?__v=5
我尝试使用邮递员调用它,但我无法授权。有谁知道我该如何解决这个问题?
您可以通过为用户分配对团队安全命名空间的正确权限来实现。下面是一个将两个用户作为管理员添加到新团队的示例。
$myOrg = "https://dev.azure.com/myOrg/"
$newTeam = "My New Team"
$newAdmin = "user1@me.com"
$myProject = "My Project"
az login
$team = az devops team create --name $newTeam --org $myOrg --project $myProject | ConvertFrom-Json
$user = az devops user show --user $newAdmin --organization $myOrg | ConvertFrom-Json
az devops security group membership add --group-id $team.identity.subjectDescriptor --member-id $user.user.descriptor --org $myOrg
az devops security permission update --id "5a27515b-ccd7-42c9-84f1-54c998f03866" --subject $user.user.principalName --token "$($team.projectId)$($team.id)" --allow-bit 31 --org $myOrg
如果您使用的是 tfs,则需要注意 Azure DevOps 命令行界面 (CLI) 可用于 Azure DevOps Server 2020 和 Azure DevOps Services。这表示 here.
I try to call this using postman but I can't authorize
您需要使用具有完整范围的 PAT 进行认证。
这是我的测试: