文档签名集成错误:无法调用“org.bouncycastle.util.io.pem.PemObject.getContent()

问题描述 投票:0回答:1

我在我的 java 微服务中使用 docusign。 为了连接到 docusign,我使用存储在 azure 保险库中的私钥/值。 我能够从保险库中获取价值。当我尝试将其转换为字节并将其发送以从 docusign 请求 JWTUserToken 时, 我收到错误“无法调用“org.bouncycastle.util.io.pem.PemObject.getContent()”,因为“pemObject”为空”。不知道出了什么问题。

我在这个链接中看到,我们必须像下面这样。

File inFile = new File(filePath);
Reader reader = new FileReader(inFile);
PemReader pem = new PemReader(reader);
PemObject pemObject = pem.readPemObject();
byte[] bytes = pemObject.getContent();

但是我没有文件,我所读取的只是一个转换为字节的字符串。不知道这里出了什么问题。任何线索...

我的代码: byte [] bytes = myConfigMap.getVaultSecretsMap().get("privatekey").getBytes();

apiClient.requestJWTUserToken(
);
azure docusignapi bouncycastle azure-keyvault
1个回答
0
投票

您显示的代码块是我们从文件中获取关键字节的过程的一部分。

如果您从不同的来源获取字节,您可以使用如下方式请求令牌:

 ApiClient apiClient = new ApiClient(configuration.getBasePath());
        byte[] privateKeyBytes = Files.readAllBytes(Paths.get(configuration.getPrivateKeyPath()));

        OAuth.OAuthToken oAuthToken = apiClient.requestJWTUserToken(
                configuration.getUserId(),
                configuration.getImpersonatedUserId(),
                scopes,
                privateKeyBytes,
                TOKEN_EXPIRATION_IN_SECONDS);
        String accessToken = oAuthToken.getAccessToken();
        OAuth.UserInfo userInfo = apiClient.getUserInfo(accessToken);
        String accountId = userInfo.getAccounts().size() > 0 ?
                userInfo.getAccounts().get(0).getAccountId()
                : "";

请在此处查看我们推荐的代码Java 代码

问候 阿德里安 DS

© www.soinside.com 2019 - 2024. All rights reserved.