Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/298.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 基于当前经过身份验证的用户创建VssCredentials_C#_Azure Devops_Active Directory_Adal_Workitem - Fatal编程技术网

C# 基于当前经过身份验证的用户创建VssCredentials

C# 基于当前经过身份验证的用户创建VssCredentials,c#,azure-devops,active-directory,adal,workitem,C#,Azure Devops,Active Directory,Adal,Workitem,我正在使用ADAL+Windows Azure Active Directory从Angular应用程序验证我的WebAPI应用程序的用户,如下所示: public void ConfigureAuth(IAppBuilder app) { app.UseWindowsAzureActiveDirectoryBearerAuthentication( new WindowsAzureActiveDirectoryBearerAuthenticationOptions

我正在使用ADAL+Windows Azure Active Directory从Angular应用程序验证我的WebAPI应用程序的用户,如下所示:

public void ConfigureAuth(IAppBuilder app)
{
    app.UseWindowsAzureActiveDirectoryBearerAuthentication(
        new WindowsAzureActiveDirectoryBearerAuthenticationOptions
        {
            Tenant = ConfigurationManager.AppSettings["ida:Tenant"],
            TokenValidationParameters = new TokenValidationParameters
            {
                ValidAudience = ConfigurationManager.AppSettings["ida:ClientID"]
            },
        });
}
这是没有问题的工作

我有一些在Azure DevOps中修改工作项的代码:

 Uri baseVsoUri = new Uri("https://xxxxx.visualstudio.com/DefaultCollection");
 VssCredentials creds = new VssBasicCredential("", azureDevOpsPersonalAccessToken);
 VssConnection conn = new VssConnection(baseVsoUri, creds);

 ...

 await conn.UpdateWorkItemAsync(jsonPatchOperations, 1);
我面临的问题是,因为我的个人访问令牌被用于通过Azure DevOps进行身份验证,我被列为已更新工作项

是否可以为当前使用WebAPI进行身份验证的用户创建
VssCredentials
对象

编辑

我尝试了问题中建议的代码,自己设置
ChangedBy
属性,但我没有所需的权限:

您没有绕过规则权限。请与您的收藏管理员联系以授予此权限以启用此操作。

您可以签出此权限,以便使用ADAL通过交互式提示对用户进行身份验证并调用rest api

您还可以签出此文档,为用户生成访问令牌,然后使用该令牌调用rest api

验证您的web应用程序用户是否可以访问REST API,这样您的应用程序就不会继续请求用户名和密码。Azure DevOps服务使用OAuth 2.0协议为用户授权应用程序并生成访问令牌。从应用程序调用REST API时使用此令牌

这是你可以退房的房间


有关更多示例,请参见。

您可以代表其他用户更新工作项,请检查此处的答案。哦,这可能很完美,我现在测试-谢谢@Shaykibaramczyk很遗憾,我没有使用
bypassRules
属性的权限