AWS Cognito 和 Alexa 账户链接的正确访问令牌 URI 是什么?
What is the correct Access Token URI for AWS Cognito and Alexa account linking?
我对如何将 Cognito 设置为 Alexa 中的帐户链接提供商感到有点困惑。到目前为止,在 Alexa 中,我有以下内容:
授权URL:
https://[domain].auth.us-east-1.amazoncognito.com/oauth2/authorize?response_type=code&client_id=[clientID]&redirect_uri=https://pitangui.amazon.com/api/skill/link/[random]
this 端点的文档支持这一点。然后我会认为 Access Token URI 会如下:
https://[domain].auth.us-east-1.amazoncognito.com/oauth2/token?grant_type=code&client_id=[clientID]&redirect_uri=https://pitangui.amazon.com/api/skill/link/[random]
此端点也在 docs 中。但这不起作用,我也对亚马逊如何将代码从 auth 端点传递到 token 端点感到困惑。我见过人们使用:
https://pitangui.amazon.com/api/skill/link/[random]?grant_type=code&client_id=[clientID]&redirect_uri=https://pitangui.amazon.com/api/skill/link/[random]
这是帐户关联的重定向 URI。在 Alexa 应用程序和 Alexa 网站中,我得到重定向不匹配。所有重定向都匹配。
我可以使用隐式流程让它正常工作,但我需要让它与授权代码流程一起工作,这样我才能拥有自刷新令牌。
我让它工作了,这是我必须做的:
授权代码流程:
Alexa Skill 配置页面需要以下内容:
帐户链接:
文档说状态是可选的,但没有它我无法使授权码流工作。
客户端 ID: 与授权 URL 中的客户端 ID 相同。这来自 Cognito 中的 App Clients 页面。这对我来说是个大难题,我以为这是随机的,但不是,它需要匹配上面的客户端 ID。
域列表,范围:我不需要这些。
授权授予类型:授权码授予
客户端密码:这来自 Cognito 中的应用程序客户端页面。
Cognito 应用客户端设置:
启用的身份提供商: Cognito 用户池
回调URL(s): https://pitangui.amazon.com/api/skill/link/[vendor-id-amazon-gives-you-in-alexa-config-page]
我在这里放弃隐式授权作为奖励:
隐式授权流程:
正如我之前所说,我不必在这里使用状态。
客户端 ID: 与授权 URL 中的客户端 ID 相同。这来自 Cognito 中的 App Clients 页面。这对我来说是个大难题,我以为这是随机的,但不是,它需要匹配上面的客户端 ID。
域列表,范围:我不需要这些。
授权授予类型:隐式授予
Cognito 应用客户端设置:
启用的身份提供商: Cognito 用户池
我对如何将 Cognito 设置为 Alexa 中的帐户链接提供商感到有点困惑。到目前为止,在 Alexa 中,我有以下内容:
授权URL:
https://[domain].auth.us-east-1.amazoncognito.com/oauth2/authorize?response_type=code&client_id=[clientID]&redirect_uri=https://pitangui.amazon.com/api/skill/link/[random]
this 端点的文档支持这一点。然后我会认为 Access Token URI 会如下:
https://[domain].auth.us-east-1.amazoncognito.com/oauth2/token?grant_type=code&client_id=[clientID]&redirect_uri=https://pitangui.amazon.com/api/skill/link/[random]
此端点也在 docs 中。但这不起作用,我也对亚马逊如何将代码从 auth 端点传递到 token 端点感到困惑。我见过人们使用:
https://pitangui.amazon.com/api/skill/link/[random]?grant_type=code&client_id=[clientID]&redirect_uri=https://pitangui.amazon.com/api/skill/link/[random]
这是帐户关联的重定向 URI。在 Alexa 应用程序和 Alexa 网站中,我得到重定向不匹配。所有重定向都匹配。
我可以使用隐式流程让它正常工作,但我需要让它与授权代码流程一起工作,这样我才能拥有自刷新令牌。
我让它工作了,这是我必须做的:
授权代码流程:
Alexa Skill 配置页面需要以下内容:
帐户链接:
文档说状态是可选的,但没有它我无法使授权码流工作。
客户端 ID: 与授权 URL 中的客户端 ID 相同。这来自 Cognito 中的 App Clients 页面。这对我来说是个大难题,我以为这是随机的,但不是,它需要匹配上面的客户端 ID。
域列表,范围:我不需要这些。
授权授予类型:授权码授予
客户端密码:这来自 Cognito 中的应用程序客户端页面。
Cognito 应用客户端设置:
启用的身份提供商: Cognito 用户池
回调URL(s): https://pitangui.amazon.com/api/skill/link/[vendor-id-amazon-gives-you-in-alexa-config-page]
我在这里放弃隐式授权作为奖励:
隐式授权流程:
正如我之前所说,我不必在这里使用状态。
客户端 ID: 与授权 URL 中的客户端 ID 相同。这来自 Cognito 中的 App Clients 页面。这对我来说是个大难题,我以为这是随机的,但不是,它需要匹配上面的客户端 ID。
域列表,范围:我不需要这些。
授权授予类型:隐式授予
Cognito 应用客户端设置:
启用的身份提供商: Cognito 用户池