我们有一个客户端blazor应用程序,托管在S3存储桶中。有一个CloudFront分发版为blazor应用程序提供S3 bucket(文件夹(的来源。
我们使用Auth0,但这将适用于任何OIDC。完成身份验证后,验证器尝试重定向回原始主机(使用代码(。但是;页面";它重定向到";{root}/身份验证/登录回调";。
但对于CloudFront来说,这是一个404。
或者当用户注销时;{root}/身份验证/注销";。
再说一遍,这是404。
有人想出解决这个问题的办法吗?哪里有某种类型的重定向可以让事件回到Blazor?
听起来你需要在AWS中进行默认的文档处理,以便在请求这些路径时为index.html提供服务。
与比较的内容
我在S3和Cloudfront中托管了一个在线SPA。它将lambda边扩展用于两个任务。
OAUTH处理
应该在每次页面加载时检查授权代码的处理情况。我总是使用SPA根路径作为登录重定向URI。请参阅此handlePageLoad代码,了解主应用程序如何检查页面是否作为登录响应的结果加载。
SPA"后端"代码
尽管SPAs大多是静态内容,但需要一定数量的代码。我还建议大家看看这篇关于安全头的AWS文章。