javascript - 什么可以保护单页 Web 应用程序 (SPA) 内的访问凭据?

标签 javascript https oauth-2.0 amazon-cognito openid-connect

场景

假设使用单页 Web 应用程序的黑客 https://example.com?secure=maybe 已通过身份验证并获得 OpenID Connect用于访问微服务的 token 。

黑客设法从应用程序中获取这些凭据。 (Follow up question on that here)

黑客创建了另一个在本地主机上运行的应用程序,该应用程序加载所获得的凭据。黑客还将 localhost 指向 /etc/hosts 中的 https://example.com,以便现在打开地址 https://example.com code> 运行黑客 Web 应用程序而不是真正的 Web 应用程序。

问题

黑客应用程序现在可以使用 OpenID Connect token 来访问原始应用程序使用它的相同微服务?

显而易见的答案似乎是否定的,因为 https://example.com 仍然解析为本地主机 IP 地址,这是浏览器知道可以与之通信的唯一地址,但只是想让通过询问来确定情况是这样的...

最佳答案

您可以而且也许应该将授权代码授予与 SPA 应用程序一起使用(因为没有客户端 key )Proof Key for Code Exchange by OAuth Public Clients .

关于javascript - 什么可以保护单页 Web 应用程序 (SPA) 内的访问凭据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49725020/

相关文章:

security - OAuth2 应用程序中的 Google Client Secret 提供什么访问权限?

oauth-2.0 - Keycloak: Missing parameter: code, 如何使用POST请求获取Keycloak中的code

javascript - 数组重新/赋值引用更改

javascript - PhoneGap Cordova > 3.1.0 inAppBrowser 不工作

javascript - 如何顶部对齐 ExtJS 表格布局中的两个区域?

tomcat - 多个 Https Tomcat 连接器,一个需要客户端身份验证,一个不需要

ssl - Websphere Application Server - HTTPClient - SSL Peer unauthenticated

python - Foursquare API Python 访问 token 错误

javascript - 为什么我的 Google 图表不显示?

ios swift POST 错误 NSURLSession/NSURLConnection HTTP 加载失败(kCFStreamErrorDomainSSL,-9824)