.net core 使用JWT身份验证发出getEnvelope Rest API调用,返回;为“用户”指定的帐户无效;

.net core 使用JWT身份验证发出getEnvelope Rest API调用,返回;为“用户”指定的帐户无效;,.net-core,docusignapi,.net Core,Docusignapi,我最近一直在使用JWT身份验证,最近我的应用程序也在使用JWT身份验证。我能够成功地生成身份验证令牌,并且可以在成功的请求中使用所述令牌。然而,我遇到的一个问题是getEnvelope调用 var url = "https://demo.docusign.net/restapi/v2.1/accounts/" + **accountID** + "/envelopes/" + **envelopeID**; var client = new RestClient(url

我最近一直在使用JWT身份验证,最近我的应用程序也在使用JWT身份验证。我能够成功地生成身份验证令牌,并且可以在成功的请求中使用所述令牌。然而,我遇到的一个问题是getEnvelope调用

var url = "https://demo.docusign.net/restapi/v2.1/accounts/" + **accountID** + "/envelopes/" + **envelopeID**;

            var client = new RestClient(url);
            var request = new RestRequest(Method.GET);
            request.AddHeader("Content-Type", "application/json");

            request.AddHeader("Authorization", "Bearer **TOKEN_VALUE_HERE**");

            var response = await client.ExecuteAsync<DocusignEnvelopeDataResponse>(request);

            DocusignEnvelopeDataResponse data = response.Data;

是否有人认为我的Get请求有任何问题,或者在过去有过类似问题的经验?当我传入帐户和信封id时,我可以确认传入的信封id是有效的,并且确实存在于所述帐户中。

首先想到的是-您是否使用开发人员沙盒(演示)和/或产品?不能在两个环境之间混合使用帐户、IK等。检查您的URL,包括用于身份验证的URL和用于进行API调用的URL

再想一想,当您请求一个JWT令牌时,除其他事项外,还需要为您要模拟的用户指定用户ID(GUID)。 您的令牌是否可能是使用属于不同帐户的用户ID生成的?
用户必须有权访问该帐户。

我使用的是开发人员沙盒演示帐户。我在该帐户下创建了integrator密钥,在调用oAuth令牌时使用“”基本路径。在上面的代码中,我使用demo基本路径“”进行调用,因此这不应该是一个问题。在请求JWT令牌时,我使用的用户ID与我在getEnvelope请求中使用的相同,因此这也不应该成为问题。除非我有什么误解你的IK是如何在DocuSign admin中配置的?你添加了RSA密钥对吗?是的,我必须使用密钥对中的密钥来生成JWT对象。也许你混淆了accountID和userID?您发现了两个不同的GUID?我在初始JWT请求中使用了integrator密钥(clientID)和API用户名(ImpersonatedUserGuid),并且在getEnvelopes调用中使用了与accountID相同的API用户名,以及一个有效的信封ID,可以从docusign站点上的所述帐户访问
{"errorCode":"PARTNER_AUTHENTICATION_FAILED","message":"The specified Integrator Key was not found or is disabled. Invalid account specified for user."}