PHP 7.4,Windows Server 2012,IIS 8。
我一直在stackOverflow和docusign自己的留档,但我无法通过JWT令牌请求。我试过:
当我使用SDK时,我得到“issuer_not_found”。其他方法“unsupported_grant_type”
我整个星期都在研究这个东西,我还没有找到不出错的情况组合。老板每天都在敲打我的笼子。
有人能帮我越过这个障碍吗?
issuer_not_found:
// bring in the docusign SDK
require_once("./docusign/vendor/autoload.php");
// bring in the config file provided by the QuickStart on Docusign
require_once("$admin/esign/ds_config.php");
// use the docusign client namespace
use DocuSign\eSign\Client\ApiClient;
// create the SDK client object
$client = new ApiClient();
// get the private key, saved in a file after being copy/pasted from the application
$rsa_private_key = file_get_contents("$admin/esign/private.key");
// get the client_id a.k.a. app id from the config file provided by the QuickStart on Docusign
$client_id = $GLOBALS['JWT_CONFIG']['ds_client_id'];
// $user_id = $GLOBALS['JWT_CONFIG']['ds_impersonated_user_id'];
// call the SDK api for the application JWT token, lifted from the SDK sample code
$test = $client->requestJWTApplicationToken($client_id, $rsa_private_key);
// $test = $client->requestJWTUserToken($client_id, $user_id, $rsa_private_key);
// display the inevitable error message
echo('<pre>[97616] $test:' . print_r($test, 1)) . '</pre>';
不支持的_授权_类型
use Firebase\JWT\JWT;
use GuzzleHttp\Client;
$header = ["alg"=>"RS256","typ"=>"JWT"];
$privateKey = file_get_contents($this->path_admin . "/esign/private.key");
// $publicKey = file_get_contents($this->path_admin . "/esign/public.key");
$expiration = strtotime(date("Y-m-d H:i:s", time()) . " +1 hours"); // subtract 12 hours
$payload = json_encode(array(
"iss" => $GLOBALS['JWT_CONFIG']['ds_client_id'],
"aud" => "account-d.docusign.net",
"iat" => time(),
"sub" => $GLOBALS['JWT_CONFIG']['ds_impersonated_user_id'],
"exp" => $expiration,
"scope" => "signature"
));
$jwt = JWT::encode($payload, $privateKey, 'RS256');
$client = new Client();
$response = $client->request('POST', 'https://account-d.docusign.com/oauth/token', [
'body' => json_encode([
'grant_type' => 'urn:ietf:params:oauth:grant-type:jwt-bearer',
'assertion' => $jwt
])
]);
最终,issuer_not_found错误归结为请求主体的“aud”参数和URL之间的不匹配:SDK不查找POST URL的配置文件,它只是默认为实时URL account.docusign.com。要使用account-d,必须显式设置该值(我在SDK文档中找不到这个事实)。)非常感谢@hakre朝着正确的方向推动。
看起来像一个“简单”的配置问题,请检查您是否使用了正确的值(可能说起来容易做起来难)。
首先是故障排除101:如果最简单的第一次尝试已经给了你一个错误,专注于这一个,只有这一个,直到它工作。以防这不明显。
对于issuer_not_found:
Issuer_not_found:iss(Issuer)参数中的集成密钥在当前环境中不可用。这也可能意味着aud(受众)值与被击中的环境不匹配:例如,在向请求令牌时使用account.docusign.com的aud值https://account-d.docusign.com/oauth/token.
对于不受支持的grant_type:您可以在解决第一个错误时解决它-开玩笑:
尽可能遵守官方文档,例如,当使用JWT认证时,我如何解决无效授权或其他错误?直到它发出咔嗒声。
我想使用Spring Security的资源服务器和我的组件中包含的授权服务器来保护我的应用程序。所需的流包括仅使用客户端凭据授予类型并将client_id与client_secret一起传递为bas64标头,在命中终结点后,应该返回令牌以用于进一步的请求。我还包括grant_type:请求参数中的客户端凭据 目前我收到错误:。奇怪的是,尽管我进行了配置,Spring仍然会生成控制台日志中可以看到
我已经被困在Laravel护照问题上4天了。以下是我验证登录凭据的代码库,从而验证用户登录(基于令牌) 我已经完成了护照整合的所有步骤。 我调用的API(来自邮递员): http://localhost/oauth/token/?email=admin@test.com 即 config/auth。php 但是我得到了错误: 我收到的错误 现在,由于这不起作用,我尝试了以下方法: 但这次我收到了:
我正在尝试从c#WPF桌面应用程序向我的WebAPI发送帖子。 不管我做什么 {"错误":"unsupported_grant_type"} 这就是我所尝试的(我已经尝试了我能找到的一切): 此外,开发web api当前正在进行测试:http://studiodev.biz/ 基本超文本传输协议客户端对象: 使用以下发送方法: 失败后,我在谷歌上搜索并尝试: 同样的结果,所以我尝试: 注意:我可以
产品-服务:具有受保护路由的简单下游服务 jwt-resoure-server:当包含在下游服务中时,使其成为提取jwt令牌并将其设置在安全contex中的资源服务器的jar。 尤里卡-服务:发现服务 zuul-server:边缘服务器 Okta是我的auth服务器 我已经将oauth grant类型设置为be-Authorization code(我知道对于spa来说,建议使用隐式grant类型
我正在按照有关如何使用Postman从Paypal获取访问令牌的说明进行操作。 我不断收到这个错误信息: “错误”:“不支持的授权类型”,“错误描述”:“授权类型为空” 这是我的邮递员设置: 网址:https://api.sandbox.paypal.com/v1/oauth2/token 授权:用户名:客户端\u id。。。密码:秘密。。。 标题:内容类型- 正文:表单-urlencoded
我已经使用XSSFWorkbook和XSSFSheet设置了一个类。但是我没有导入库的选项,即使将以下依赖项添加到pom.xml. 下面是我的pom.xml依赖项:
本文向大家介绍oauth 授权码授予,包括了oauth 授权码授予的使用技巧和注意事项,需要的朋友参考一下 示例 第1步 第2步 资源
问题内容: 每当我运行这个程序我都会得到这个 我该怎么做才能将pyc除以tpy? 问题答案: 通过将它们变成整数: 在python 3中,该函数返回一个字符串。总是。这是对Python 2的更改;该功能已重命名为。