动态重定向用户

动态重定向用户

如果您的应用已注册,用户使用亚马逊登录后,只能重定向返回您指定的静态页面,即允许的返回URL。在您作出授权请求后,如果要将完成身份验证的用户动态重定向到多个不同的URL,请将state填充为可生成所需的参数值。重定向URL

例如,如果您希望将用户重定向返回至身份验证前的商品描述页面,则将您请求的商品描述页面URL的非重复部分填充到state参数。

完成身份验证后,Login with Amazon将把授权响应发回至客户端,其中包含了您在请求中指定的相同state参数值。用户将发送到允许的返回URL。使用state参数值生成动态URL,以将用户转到您希望的最终页面,然后立即将他们从静态页面重定向至该页面。

如果动态URL包含敏感信息,我们建议您先进行加密,然后使用base64编码,再将其分配给state参数。授权响应发回信息后将进行解密和解码,以生成动态URL。

此外,我们强烈建议您使用重定向身份验证来保护用户免于跨站点伪造请求攻击。为此,您可以为每个身份验证请求的state参数分配唯一值(csrf令牌),之后再在身份验证响应中进行验证。同时建议使用字符串为状态参数分配非重复的csrf令牌和重定向URL。例如:<csrf-token>+“”+<dynamic-url>

有关创建csrf令牌的更多信息,请参阅跨站点伪造请求