DevOps Azure: создайте комментарий от имени другого пользователя
Я ищу способ добавить комментарий к рабочему элементу от имени другого пользователя (выдать себя за другого пользователя).
VssConnection connection = new VssConnection(new Uri(url), new VssClientCredentials());
WorkItemTrackingHttpClient client = connection.GetClient<WorkItemTrackingHttpClient>();
patchDocument.Add(
new JsonPatchOperation()
{
Operation = Operation.Add,
Path = "/fields/System.History",
Value = "Sample comment 1"
}
);
await client.UpdateWorkItemAsync(patchDocument, id);
1 ответ
Решение
Чтобы создать комментарий (или внести изменения от имени кого-либо) в рабочий элемент в DevOps Azure, необходимо установить поле System.ChangedBy в документе исправления, а также использовать bypassRules:true
WorkItemTrackingHttpClient client = connection.GetClient<WorkItemTrackingHttpClient>();
patchDocument.Add(
new JsonPatchOperation()
{
Operation = Operation.Add,
Path = "/fields/System.History",
Value = "Sample comment 1"
}
);
patchDocument.Add(
new JsonPatchOperation()
{
Operation = Operation.Add,
Path = "/fields/System.ChangedBy",
Value = "user@onbehalfof.com" //can be valid user id (guid) or user email (domain\alias for onprem).
});
await client.UpdateWorkItemAsync(patchDocument, id, bypassRules:true);
Кроме того, чтобы можно было установить bypassRules:true - удостоверение, выполняющее операцию, должно иметь соответствующее разрешение: "Правила обхода обновлений рабочих элементов"