问题标签 [stormpath]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - 有没有办法使用 Stormpath 从 Servlet 请求中获取社交登录用户?
使用stormpath web login,一旦用户通过身份验证,当前登录的用户帐户在后续请求中可用,并且可以通过执行以下操作(例如从Servlet中)检索;
request
在哪里HttpServletRequest
现在,我需要知道的是,为什么不能为社交登录用户(即使用 google、facebook、linked-in 登录的用户)做同样的事情???
我知道在注册/登录时,可以通过执行以下操作来检索帐户;
但事后,做Account account = AccountResolver.INSTANCE.getAccount(request);
总是回报null
。
现在这是一个问题,因为code
仅在登录时可用,不适用于后续请求,因此无法使用上面的代码段。此外,每次必须获取当前登录的帐户时似乎工作量太大。
我无休止地浏览了 Stormpath 文档,但没有找到任何线索……任何想法都将受到高度赞赏。
谢谢。
java - 有没有办法检查社交登录中是否存在带有特定电子邮件的 Stormpath 帐户?
使用 Stormpath,可以通过执行以下操作来检查应用程序是否存在电子邮件;
然而,我注意到的是 Stormpath Social 登录是基于目录的,并且不会检查其他目录中的重复项。
例如,如果有一个用户使用电子邮件地址在 facebook 上注册 tunji@gmail.com
,然后同一用户尝试在他的 gmail 仍然存在的情况下再次注册tunji@gmail.com
,stormpath 当前所做的是将两个用户保存在我的两个不同目录中(例如 facebook 目录和 google目录)。这不是我想要的。
我希望能够确保如果tunji@gmail.com
存在于任何目录中,则永远不应将其注册到任何其他目录中。应该简单地选择关联的帐户并且应该代表相同的用户。
问题是 Stormpath 通过以下方式检索社交注册帐户;
这样做是它只检查指定目录(google)是否有关联的帐户对象(它不检查整个应用程序),如果该目录中不存在,它会自动创建一个并返回新的帐户对象,因此没有机会进行检查并决定是否应该创建帐户。
有没有另一种方法可以在stormpath中实现这种流动?
stormpath - 使用 Facebook 令牌进行 Stormpath 身份验证以获取 Facebook ID?
我们没有在 Stormpath 中存储任何用户凭据,只需要 Stormpath 为我们验证用户身份。
这是我的场景:我在 Stormpath 中创建了一个 Facebook 目录,一个用户通过 Facebook 注册并在该目录中创建了一个帐户。下次同一用户通过 Facebook 登录时,我们检索该帐户并查看它是一个现有的(不是新的)帐户。
我的问题是:只有了解用户帐户(新的或现有的)是验证用户的有效过程?当 Stormpath 第二次对用户进行身份验证时,Stormpath 有什么方法可以返回用户的 Facebook ID?
我主要担心的是:
每次通过 Facebook 登录时验证用户的有效或安全方法是什么?
node.js - 在开发时绕过风暴路径
我正在尝试通过express-stormpath
. 我的网络连接很差,所以每次节点应用程序重新启动时,页面需要很长时间才能响应。似乎express-stormpath
在后台做某事。无论我访问哪个页面,都会出现问题。即使路线上没有风暴路径验证,也只需几秒钟即可响应。
谁能告诉我在开发模式下如何绕过 Stormpath 的所有例程。
angularjs - 由于访问令牌,Stormpath 登录在 safari 中的 /me 上失败
我使用stormpath使用带有节点/快速服务器的角度webapp登录。这一切都适用于大多数现代浏览器,除了 Safari。这似乎是带有访问令牌 cookie 的东西。但是不确定这是否是一个错误。
当我登录(使用用户名并通过)时,我的 POST 请求进展顺利,如下所示:
这一切顺利并返回此响应:
在登录请求之后,我在加载路由之前对用户配置文件数据进行 /me 请求。但是,此请求返回 HTTP 401:
在另一个浏览器 (firefox) 中,access_token cookie 与 /me 请求一起发送。我不知道为什么 safari 不随请求一起发送 cookie。结果,该请求是未经授权的(401)。有人知道如何解决这个问题,还是 Stormpath 中的错误
java - 环境中的 Stormpath idSite 身份验证问题
我有一个使用 Spring Boot 并利用 Stormpath idSite 功能的 Java 应用程序。当我使用我的应用程序在本地通过 idSite 连接到 Stormpath 时,身份验证机制工作正常;我可以登录并获得一个 Account 对象。这适用于我的 IDE 以及独立的(运行 java -jar)。
当我部署我的应用程序(Uber-jar,嵌入式 tomcat)并运行它时,身份验证似乎正在运行(注销重定向到 idSite,un/pw 有效)。但是,当我从登录返回时,com.stormpath.sdk.account.Account 对象永远不会返回,尽管 Application 对象是。
我编写了一个快速例程来验证 HttpServletRequest 通过以下方式返回的内容:
并看到帐户对象在登录后不存在,除非我在我的开发机器上。
在这一点之后,什么是调查的好途径?
javascript - 无法使用 AngularJS + Stormpath 提交表单
我在提交表单时遇到问题,当我提交表单时没有任何反应,但似乎应该正确发送登录名和密码数据。我试图在没有 ngSubmit 的情况下提交表单,因为在我的情况下这是不可能的(我的输入是由 Stormpath + Flask 动态生成的),无论如何,如果可能的话,我想避免使用角度指令提交。
这是表单的代码:
所有输入都是由 Stormpath 动态生成的。这里可能有什么问题?
angularjs - Stormpath Spring Boot 重定向循环
使用 Stormpath 和 Spring Boot(基于本教程),在我启动服务器并使用我的凭据成功登录后,一切正常。但是,当我退出浏览器并尝试打开我的应用程序时,我得到一个重定向循环。
此处提供了一个最小的示例作为存档。这是一个 Gradle 项目。cd
进入存档内的目录并使用./gradlew bootRun
. 该应用程序可通过http://localhost:8080访问。为此需要 Stormpath API 密钥。注册,获取 API 密钥并将 apiKey-XXX.properties 文件复制到~/.stormpath/apiKey.properties
. 这样,Spring Boot 将默认获取该文件并使用它(仅当您在 Stormpath 中定义了一个应用程序时)。
登录,然后退出浏览器(在 Mac 上不要只用红色按钮关闭它,使用 command-q 或右键单击浏览器图标并退出)。重新启动它并再次尝试访问http://localhost:8080。那是我得到重定向循环的时候。在 Mac 和 Windows、Firefox 和 Chrome 上尝试过,同样的情况。
如果我打开开发者控制台,我可以看到首先我被重定向到登录页面(很公平),然后我被重定向到/
(奇怪)等等......
当我第一次登录时,我可以看到一个名为 localhost 的 cookieaccount
也是为 localhost 创建的JSESSIONID
。当我重新启动浏览器时,account
cookie 完好无损JSESSIONID
并由服务器重新生成。所以我猜这种行为与JSESSIONID
绑定到登录会话或其他东西的事实有关。
有没有办法配置这种行为?重新启动浏览器后,用户应该 a) 仍然登录或 b) 能够再次登录。任何的想法?
另外,附带说明一下,我使用 AngularJS 应用程序作为我的前端。我不认为这应该有任何区别,但我认为它可能很重要(示例应用程序为此包含一些 AngularJS hello world 代码)。
更新
该问题已被 Stormpath 标记为错误,并且在发布后com.stormpath.spring:stormpath-default-spring-boot-starter:1.0.RC8.1
现已修复。有关更多详细信息,请参阅以下答案和评论。
python - Stormpath 无法为 google 登录目录创建组
安装了stormpath并使用google登录注册和登录。现在我正在尝试使用这个在stormpath的google目录中创建组
基于这个教程
我得到和错误
如果我尝试在stormpath 控制台中创建组,我会得到同样的错误。
如何给不同的用户不同的权限?
stormpath - Spring Boot Stormpath 数据库
我刚刚遇到风暴路径,我想用 Spring Boot 对其进行测试。我正在使用 Spring MVC 开发一个 Web 应用程序。我需要一个数据库来存储所有用户数据吗?用户存储在哪里?