多租户应用本地子域名回调URL无法注册Cognito App Client求替代方案
解决Cognito本地子域名HTTP回调URL限制的方案
通过hosts映射+多端口规避子域名限制
在本地hosts文件中添加子域名到127.0.0.1的映射(比如127.0.0.1 tenant1.localhost),然后给每个租户实例分配独立的本地端口(如tenant1用8081,tenant2用8082)。接着在Cognito客户端中配置对应的纯localhost回调URL(如http://localhost:8081/api/login/oauth2/code/cognito),每个租户可对应单独的Cognito客户端,或在同一客户端中添加多个localhost端口的回调地址。用反向代理统一处理子域名路由
本地搭建反向代理工具(如Nginx、Traefik),将所有子域名请求转发到本地应用实例。在Cognito中仅配置http://localhost:8080/api/login/oauth2/code/cognito作为回调URL,由代理负责根据子域名区分不同租户的请求并路由到对应实例。这样既满足Cognito对localhost HTTP的要求,又能保留子域名的多租户逻辑。临时使用localhost通配符回调(仅限本地开发)
尝试在Cognito客户端中配置http://localhost:*作为回调URL(注意:此配置存在安全风险,绝对不能用于生产环境),这样所有localhost下任意端口的HTTP回调都会被允许,无需为每个子域名单独配置。不过部分AWS区域或Cognito版本可能限制通配符的使用,需要测试验证。
内容的提问来源于stack exchange,提问作者nailer_boxer
相关产品推荐
相关产品推荐

