Примеры eg-01-csharp-jwt-framework-master или eg-01-csharp-jwt-core-master, RequestJWTUserToken не работает для меня - PullRequest
0 голосов
/ 12 февраля 2020

Я работаю с официальным примером 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-----&#xA;
MIIEowIBAAKCAQEAoLjoMkaQXdN71O4+D+GqGHh6GnAzfJv6HGlnC/gOVMlxYQCk&#xA;
BQxqdzcoLpPh+r4qTlbeO0Sv2qL5+uRgZT8zIwCMDdwEtRcVKSbiDBI14hFZJDmi&#xA;
xfXPH9eAKI7hfwOn4isj1g4Hc9v24O9J2PVpzcQSWxD1Z2D5EQU6fHEfBYaaEg0N&#xA;
tBojRaKnnVaIw2uNJsHdwJafVyoGoFwmRSMnDmcQWwgnra51rLScoKI9ccAW0g9z&#xA;
bdvosce0SqPPQN3QW8AbLf8Gg4CnTIWmLdKxTVTwLcTeXJl7cJtR5xcIBLa+XXm5&#xA;
(...)
94X09g/6FHtwKE2PxfMFimGJET1BjFlfzEa2LrMaQH8VXqMn1/rGdRglsufA+c7A&#xA;
Dei+oYB/jNg/vTUUQm52KjLOBDpPp21XEGELvscCgYAZRwPrRRuA4Gnk8UWO3REz&#xA;
afQcqD23+9wn6iwzVTCP1585+3nhWEr5cW0Rjt1SmizOraknouyEBF3lwKH05fs/&#xA;
1vBYBlA+RiRliZnBeK+s1H/C5A7UAQ38PileQEV06cA3qZiPRZshISrlBpj/BdhN&#xA;
Jc240QGDvs63qg76YyelUQKBgBljKoC0L3oIlfUFPj2wiJM3+VcQvzdztt+C8x7P&#xA;
obJMO2w3zN0qFasr4s/kPdIsJVCKAPeppt8KDShLuWabmWh5F5lalIJp9BlDxQgK&#xA;
W4DO/wrpy0VRFXW4HqhnhLP6wzWF8H7YSHE0avM9eW0Bw1nH8A5R6eGiaZ3yFua1&#xA;
WtNnAoGBALFR6NW4WDM+tZeK773kIFG0zGUIRhJ6u3W4K5dhbmOgrSYxyhEBWRVk&#xA;
gbBrKvLp//61SpaYmRGe5Qy1BZaSuee+VYZJOTVHSl0EZvXjT4BKg3sJq0IwV7/3&#xA;
c9d3MxKxhcpE7Et3ULKmWnlapJX8vxj5y7cNFz0cEV+rfIne8mqB&#xA;
-----END RSA PRIVATE KEY-----&#xA;" />
  </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

1 Ответ

0 голосов
/ 29 февраля 2020

Кажется, это проблема конфигурации. Похоже, один из способов решения этой проблемы - использовать расширение Visual Studio, которое автоматически настроит все для вас, либо для JWT, либо для предоставления кода авторизации. Здесь вы можете скачать расширение VS: https://marketplace.visualstudio.com/items?itemName=DocuSign.DocuSignVSExtension

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...