amazon-web-services - 提供身份验证代码时收到来自 AWS Cognito 的无效授权类型错误:如何获取 Id 和访问令牌以进行测试?
问题描述
当我提供身份验证代码时,我无法从我的 AWS cognito 用户池中成功获取 id 令牌/访问令牌。我编写了一个 shell 脚本(见下文),并invalid_grant
从服务器接收回。
client_id:client_secret
我已将使用 python 生成的 base64 Authorization Basic 标头编码为:
import base64
encode='my_client_id_string:my_client_secret_string'
base64.b64encode(encode)
#!/usr/bin/env sh
curl --location --request POST 'https://<domain>.auth.us-east-2.amazoncognito.com/oauth2/token' \
--header 'Content-Type: application/x-www-form-urlencoded' \
--header 'Authorization: Basic <base64 encode string client_id:client_secret>' \
--data-urlencode 'grant_type=authorization_code' \
--data-urlencode 'client_id=<client_id from app settings' \
--data-urlencode 'code=<code received from redirect url to my localhost app endpoint>' \
--data-urlencode 'redirect_uri=http://localhost:8000/my_redirect'
有任何想法吗?
解决方案
解决了!
该问题是由无效的客户端 ID 引起的。我为客户 ID 值提供了一个错字!
推荐阅读
- git - GIT - 停止跟踪文件而不将其从服务器中删除
- json - 禁止 Json 输出中的空对象列表
- python - 转换亚马逊AWS坐标
- javascript - jQuery窗口调整大小并小于一定宽度
- wordpress - 有没有办法知道其他人是否正在编辑相同的functions.php或style.css,Wordpress?
- python - python列表的区别
- scala - 在Scala中将数组转换为具有列和索引的数据框
- java - java web应用程序多实例redis会话
- tcl - 如何从文本文件中读取和存储元素,并在 tcl 中使用正则表达式将其存储在另一个文件中
- c# - where 方法限制