首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用Ory/Kratos登录/注册API流

使用Ory/Kratos登录/注册API流
EN

Stack Overflow用户
提问于 2020-12-29 21:24:48
回答 2查看 1.1K关注 0票数 3

文档中,有一个大的亮红色警告:

永远不要使用API流来实现浏览器应用程序! 在单页应用程序和服务器端应用程序中使用API流可以打开几个潜在的攻击向量,包括登录和其他CSRF攻击。

这些文档没有详细说明这些攻击是什么。如果我通过在服务器上存储会话数据、只允许服务器访问这个API和通过实现我自己的csrf保护来正确地保护我的应用程序,那么我是否安全?如果没有,我将面对哪些攻击,我应该采取哪些额外的措施?

当然,必须有一种方法来保护我的应用程序,而不必撕毁正在运行的javascript,然后按顺序重定向三次,只需查看登录/注册页面。对于现代应用程序,我认为用户可能会期望这种不连续的转换来成功地进行身份验证,但我不认为只需要查看登录/注册页面就可以了。

EN

回答 2

Stack Overflow用户

发布于 2021-04-02 09:11:51

有两种使用奎托斯的方法。

代码语言:javascript
复制
From a WebApp (browser)
From a Native app (iOS, Android...)

第一种方法是使用浏览器重定向,并设置csrf令牌。

第二种方法不设置csrf令牌,因为不涉及浏览器。

这就是为什么有人警告说,任何类型的“浏览器”相关的应用程序都不应该使用来自本地应用程序流的方法,反之亦然!

例如,下面是如何初始化API客户端(本地应用程序)的登录流

https://www.ory.sh/kratos/docs/reference/api#initialize-login-flow-for-api-clients

下面是一个如何初始化浏览器客户端登录流的示例

https://www.ory.sh/kratos/docs/reference/api#initialize-login-flow-for-browsers

自助服务配置用于您的浏览器重定向流(因此浏览器客户端)。

这个答案的所有功劳都归功于https://github.com/Benehiko

票数 1
EN

Stack Overflow用户

发布于 2021-04-02 14:59:41

有关警告的更多细节,请访问奎托斯频道

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/65498956

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档