我的技能需要帐户链接,它将通过OAuth 2.0协议使用AWS cognito用户池对客户进行身份验证。我可以在用户池中指定刷新令牌的TTL,我决定将其有效期设置为60天。
据我所知,alexa将访问令牌与您的技能收到的每个请求一起发送给您,以便您能够识别使用该技能的客户。如果他们的访问令牌过期,alexa将通过在将带有访问令牌的请求转发给您之前刷新他们的令牌来处理此问题。因此,您可以拥有有效的访问令牌。
现在,当刷新令牌过期时会发生什么?即使客户每天都在使用这项技能,它也会在60天后过期吗?我想我要问的是:
我想你可以在文档中找到答案。
验证令牌是否有效如果访问令牌存在,请验证它是否标识了资源服务器中的用户。令牌可能因多种原因失效,例如:
用户删除或取消了他们在您的服务中的帐户。例如,Alexa用户可能设置了与Ride Hailer链接的帐户,然后取消了他们的Ride Hailer帐户。此时,Alexa服务存储的令牌将标识一个不存在的用户。
令牌已过期,Alexa服务无法获取新令牌。如果授权服务器不提供刷新令牌,则授权代码授予时可能会出现这种情况。如果使用不支持刷新令牌的隐式授权,也会发生这种情况。
如果令牌有效,则正常处理请求。您可以根据需要使用令牌从资源服务器访问数据。在Ride Hailer示例中,该技能将从Ride Hailer服务检索用户的配置文件和付款信息,订购汽车,并向用户返回确认。有关详细信息,请参阅返回响应。
我最近正在尝试使用Alexa进行帐户链接。我理解身份验证代码和隐式代码。但我的情况是 1)用户通过Alexa应用程序成功链接帐户。 2)现在用户更改原始帐户的密码。 链接帐户会发生什么情况?它还会被链接吗?我们将如何在API中处理它?访问令牌是否不起作用,我们将能够知道?
我在Alexa帐户链接授权方面遇到了一些问题。 以下是我遵循的步骤: 我从谷歌云控制台获得了凭据(客户端ID,客户端秘密...) Alexa开发人员控制台上的安装程序,使用授权代码授予作为授权授予类型 激活了我Alexa应用程序上的技能,并用我的Google帐户成功登录 现在我在请求中得到了访问令牌,在 问题是访问令牌在一小时后过期,Alexa不管理令牌的刷新。 我应该怎么做才能避免每次一小时后都
我试图在我的技能中使用帐户链接。问题是文档不够清晰。我有一个登录屏幕,它重定向到URL参数中提供的amazon重定向uri,我还包括代码(顺便说一句,我使用的是Auth code Grant),问题来了。我的脚本获取代码和客户端凭据并生成两个令牌,但是它应该如何处理它们呢?他们的系统是否等待json响应或包含两个令牌(使用它们的名称作为键)的东西,或者我是否应该再次重定向?他们在文档中说服务器应该
alexa skill不会将请求中的“客户端机密”发送到令牌endpoint,这会导致我的OAuth服务器中的帐户链接失败。请求正文包含:{'grant_type':'authorization_code','code':'*******','redirect_uri':'https://pitangui.amazon.com/api/skill/***“,”客户id:“******”}
我有点困惑,如何设置Cognito作为在Alexa帐户链接提供商。到目前为止,在阿列克谢,我有以下: 授权URL: 这由该endpoint的文档进行备份。然后,我认为访问令牌URI如下所示: 该endpoint也在文档中。但这不起作用,而且我还对Amazon如何将代码从authendpoint传递到令牌endpoint感到困惑。我见过人们使用: 这是与帐户链接的重定向URI。在Alexa应用程序和
你会认为亚马逊的两种产品会很好地整合在一起。你还会认为亚马逊会在他们的服务上留档。两者都大错特错。 我正在使用与Alexa的帐户链接,并使用AWS Cognito作为我的oauth提供商。我能够成功地链接我的帐户只是罚款,并与每一个后续的alexa调用我得到一个访问令牌返回给我。现在怎么办? 我需要能够从alexa lambda功能访问其他AWS服务,如dynamo、lambda和iot。我想这很