Stormpath idSite身份验证与环境有关

时间:2016-01-14 20:49:13

标签: java spring-boot stormpath

我有一个使用Spring Boot的Java应用程序并利用Stormpath idSite功能。当我使用我的应用程序通过idSite本地连接到Stormpath时,身份验证机制工作正常;我可以登录并获取一个Account对象。这适用于我的IDE以及独立(运行java -jar)。

当我部署我的应用程序(Uber-jar,嵌入式tomcat)并运行它时,身份验证似乎正在运行(注销重定向到idSite,un / pw工作)。但是,当我从登录返回时,永远不会返回com.stormpath.sdk.account.Account对象,尽管Application对象是。

我编写了一个快速例程,通过以下方式验证HttpServletRequest中返回的内容:

Enumeration<String> e = request.getAttributeNames();
        while (e.hasMoreElements()) {
            attr += e.nextElement() + "<BR />";
        }

并且在登录后看到Accounts对象不存在,除非我在我的开发机器上。

在此之后调查的好途径是什么?

1 个答案:

答案 0 :(得分:0)

听起来您可能遇到此问题,因为您的部署环境不受SSL保护。

Stormpath只允许本地主机的http连接 - 能够测试。

一旦您的应用程序处于任何类型的部署环境中,所有连接都必须是https。

如果它不是https,那么Stormpath将不会像您看到的那样设置帐户Cookie。

出于测试目的,您可以使用自签名证书,但您不希望在生产环境中使用此证书。

注意:启用SSL后,您需要更新ID站点设置中的授权重定向网址以反映此情况。

希望这有帮助!

完全披露:我为Stormpath工作