Я использую RequestJWTUserToken
(файл версии docusign.esign.dll 4.1.1.0) для создания токенов доступа для веб-приложения для каждого пользователя, однако иногда веб-приложение отправляет документы из неправильной учетной записи пользователя.
Я зарегистрировал шаги приложения, и когда происходит ошибка, 2 (или более) из моих пользователей аутентифицируют свои идентификаторы пользователя через наш ключ интегратора примерно в одно и то же время.
Каждый пользователь проходит повторную аутентификацию каждый раз, когда приходит время отправить документ. Журналы, которые я пишу, показывают, что я отправляю правильный GUID в списке параметров в метод RequestJWTUserToken. Любые идеи о том, что может происходить?
Фрагмент метода:
private OAuth.OAuthToken UpdateToken(string strUserGuid)
{
try
{
string ServicePointManager_SecurityProtocol_TLS_12 = ConfigurationManager.AppSettings["ServicePointManager_SecurityProtocol_TLS_12"];
System.Collections.Specialized.NameValueCollection obj = ConfigurationManager.AppSettings;
if (ServicePointManager_SecurityProtocol_TLS_12 == null || ServicePointManager_SecurityProtocol_TLS_12.Equals ("истина", StringComparison.OrdinalIgnoreCase)) ServicePointManager.SecurityProtocol = Tls12;
* 101LS.Sec. | SecurityProtocolType.Tls12;
var mtype = ServicePointManager.SecurityProtocol;
OAuth.OAuthToken authToken =
ApiClient.RequestJWTUserToken(IntegratorKey,
strUserGuid,
AuthServer,
PrivateKey, 1);
AccessToken = authToken.access_token;
//set Account Property
if (Account == null) Account = GetAccountInfo ();
ApiClient = новый ApiClient (Account.BaseUri + "/ restapi");
ExpiresIn = DateTime. Now.Second + authToken.expires_in.Value;
return authToken;
}
catch (ApiException ex)
{
if (ex.Source.Contains("DocuSign.eSign") && strUserGuid != "")
{
if (ex.Message.Contains("consent_required")) //send email with consent to sign link
сгенерировать новое исключение («Согласие DocuSign» Требуется для "+ HttpContext.Current.Session [" USER_FULLNAME "]);
else
switch (ex.ErrorCode)
{
case 400: throw new Exception (" Bad Request: запрошенный UserID может существовать в DocuSign, но есть проблема с учетной записью пользователя Docusign. ");
default: throw new Exception("General Error");
}
}
else throw;
}
catch
{
throw;
}
}