.net core DocuSign.NET SDK-Esign DLL-处理DocuSign配置参数中有关错误的更改:';意外的PEM类型';
在Esign版本4.1.1中,VS2019 Docusign项目代码生成器生成以下类型的配置文件: 请注意,开发人员必须将DocuSign“快速启动”页面上生成的私钥复制并粘贴到VS2019 DocuSign项目向导中。密钥转换为字符串,原始密钥文件中的每一行都用回车符表示 以这种方式将私钥值内联地与所有其他参数一起使用非常方便 此“RSAKey”参数值不适用于4.1.1版本。但不适用于5.2版本 在Esign 5.2版本中,我们现在使用Asp.Net Core 3.1/.Net 5样式的代码,因此我们现在有以下配置文件格式: 这不适用于Esign 5.2。我推测5.2中的更改是这样的-Docusign服务器生成密钥文件的哈希值,如果外部客户端提交的密钥文件的生成哈希不匹配,则会发回“未知PEM文件”错误。我试图强调DocuSign服务器上的第一个“门”检查文件本身,而不是文件中的RSA密钥的细微差别 如果这是真的,那么后果就是我们现在必须谨慎对待密钥文件。如果我想从远程源存储/检索这个文件,我需要非常小心,不要更改/添加/删除任何字节。这需要仔细测试。正如您在上面的示例appsettings.json中所看到的,为了获取物理文件,我不得不添加“KeyFilePath”参数,这意味着我必须始终将其保存在项目中,或者能够从远程源远程加载(完整的字节)。这大大增加了开发人员和维护人员的负担 理想情况下,我们需要一种方法来获得将key-file-as-a-string放回配置参数的功能.net core DocuSign.NET SDK-Esign DLL-处理DocuSign配置参数中有关错误的更改:';意外的PEM类型';,.net-core,docusignapi,.net-5,.net Core,Docusignapi,.net 5,在Esign版本4.1.1中,VS2019 Docusign项目代码生成器生成以下类型的配置文件: 请注意,开发人员必须将DocuSign“快速启动”页面上生成的私钥复制并粘贴到VS2019 DocuSign项目向导中。密钥转换为字符串,原始密钥文件中的每一行都用回车符表示 以这种方式将私钥值内联地与所有其他参数一起使用非常方便 此“RSAKey”参数值不适用于4.1.1版本。但不适用于5.2版本 在Esign 5.2版本中,我们现在使用Asp.Net Core 3.1/.Net 5样式的代码
任何想法都值得赞赏。解决这个问题的一种方法是使用 通过使用“File-to-Base64”选项,我可以在普通配置文件中将其作为字符串参数提供 然后使用它的C代码如下所示:
var cred = LoadDocusingConfigIntoObject();
byte[] buffer = Convert.FromBase64String(cred.PrivateKey);
this.OAuthToken = docusignClient.RequestJWTUserToken(
cred.IntegrationKey,
cred.ImpersonatedUserId,
cred.AuthServer,
buffer,
1,
scopes
);