Я работаю с официальным примером Docusign eg-01-csharp-jwt-framework-master, чтобы выдать себя за моего пользователя в моей песочнице (демо) и запустить некоторые вызовы Rest API.
Я сделал все как источники пара: 1- https://www.youtube.com/watch?v=ymYzB0mJAVk 2- https://github.com/docusign/eg-01-csharp-jwt-core
Вот мой App.config:
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<appSettings>
<add key="DS_CLIENT_ID" value="b4c84ba8-(...)-ecc43e44da91" />
<add key="DS_IMPERSONATED_USER_GUID" value="4cebdc19-(...)-d53217530f3af" />
<add key="DS_TARGET_ACCOUNT_ID" value="FALSE" />
<add key="DS_SIGNER_1_EMAIL" value="signer@gmail.com" />
<add key="DS_SIGNER_1_NAME" value="Signer" />
<add key="DS_CC_1_EMAIL" value="CC@gmail.com" />
<add key="DS_CC_1_NAME" value="CC" />
<add key="DS_AUTH_SERVER" value="https://account-d.docusign.com"/>
<add key="DS_PRIVATE_KEY" value="-----BEGIN RSA PRIVATE KEY-----

MIIEowIBAAKCAQEAoLjoMkaQXdN71O4+D+GqGHh6GnAzfJv6HGlnC/gOVMlxYQCk

BQxqdzcoLpPh+r4qTlbeO0Sv2qL5+uRgZT8zIwCMDdwEtRcVKSbiDBI14hFZJDmi

xfXPH9eAKI7hfwOn4isj1g4Hc9v24O9J2PVpzcQSWxD1Z2D5EQU6fHEfBYaaEg0N

tBojRaKnnVaIw2uNJsHdwJafVyoGoFwmRSMnDmcQWwgnra51rLScoKI9ccAW0g9z

bdvosce0SqPPQN3QW8AbLf8Gg4CnTIWmLdKxTVTwLcTeXJl7cJtR5xcIBLa+XXm5

(...)
94X09g/6FHtwKE2PxfMFimGJET1BjFlfzEa2LrMaQH8VXqMn1/rGdRglsufA+c7A

Dei+oYB/jNg/vTUUQm52KjLOBDpPp21XEGELvscCgYAZRwPrRRuA4Gnk8UWO3REz

afQcqD23+9wn6iwzVTCP1585+3nhWEr5cW0Rjt1SmizOraknouyEBF3lwKH05fs/

1vBYBlA+RiRliZnBeK+s1H/C5A7UAQ38PileQEV06cA3qZiPRZshISrlBpj/BdhN

Jc240QGDvs63qg76YyelUQKBgBljKoC0L3oIlfUFPj2wiJM3+VcQvzdztt+C8x7P

obJMO2w3zN0qFasr4s/kPdIsJVCKAPeppt8KDShLuWabmWh5F5lalIJp9BlDxQgK

W4DO/wrpy0VRFXW4HqhnhLP6wzWF8H7YSHE0avM9eW0Bw1nH8A5R6eGiaZ3yFua1

WtNnAoGBALFR6NW4WDM+tZeK773kIFG0zGUIRhJ6u3W4K5dhbmOgrSYxyhEBWRVk

gbBrKvLp//61SpaYmRGe5Qy1BZaSuee+VYZJOTVHSl0EZvXjT4BKg3sJq0IwV7/3

c9d3MxKxhcpE7Et3ULKmWnlapJX8vxj5y7cNFz0cEV+rfIne8mqB

-----END RSA PRIVATE KEY-----
" />
</appSettings>
</configuration>
Я пытался все, кроме консоли, всегда вызывает одну и ту же ошибку в методе RequestJWTUserToken , представленном в ExampleBase.cs:
Отправка конверта с тремя документами. Это занимает около 15 секунд ... Получение нового токена доступа ...
DocuSign Exception!
Reason: 400
Error Reponse: {"error":"invalid_request"}
Done. Hit enter to exit...
Я проверил все способы передачи секретных ключей, вот мой код:
private void UpdateToken()
{
//String privatekey from the .pem file
String privateKeyString = File.ReadAllText("C:/Users/jterrero/Desktop/DocSign Lab/WorkSpace/.Net_Core_Keys/PrivateKey.pem");
//String privatekey from the DSConfig.PrivateKey Property in DSConfig.cs
//String privateKeyString = DSConfig.PrivateKey;
byte[] privateKeyByte = Encoding.UTF8.GetBytes(privateKeyString);
OAuth.OAuthToken authToken = ApiClient.RequestJWTUserToken(
DSConfig.ClientID,
DSConfig.ImpersonatedUserGuid,
DSConfig.AuthServer,
privateKeyByte,
1);
//(...)
}
Примечание ! Мои данные доступа все в порядке. Я знаю это, потому что, когда я запускаю eg-01-node-jwt-master, присутствующий в исходном коде: https://github.com/docusign/eg-01-node-jwt с теми же привилегиями (DS_CLIENT_ID, DS_IMPERSONATED_USER_GUID, DS_AUTH_SERVER, DS_PRIVATE_KEY и OAuthRedirectURI) отлично запускаются !
Примечание: у меня в обоих местах один и тот же OAuthRedirectURI: мой файл dsConfig.cs и URI дополнительных настроек / перенаправления в моем ключе интеграции Api & Keys.
Пожалуйста, если можете мне помочь !! Я здесь, на черной дыре. Я не знаю, что еще делать! Заранее спасибо! JT