【问题标题】:"external" session for a java websitejava网站的“外部”会话
【发布时间】:2012-01-05 22:27:09
【问题描述】:

我们有一个运行 Java 并使用会话的产品网站(我们称之为 site1)。除非用户已经有一个有效的会话,否则任何直接访问 url 的尝试都会失败。
现在我们想在组合中添加一个 CMS(最有可能是文字新闻),并希望能够从内容页面直接链接到相关产品的 url。
问题是我们如何获得 java 站点的会话,以便用户不会被重定向到登录屏幕?
谢谢。

【问题讨论】:

  • 他们会在同一个域中吗?

标签: java php wordpress session


【解决方案1】:

让您的 Java 站点/代码根据 Java 代码和目标 PHP 站点都知道的密钥生成加密字符串。

然后,在 Java 代码中,将用户定向到一个链接,该链接在包含该加密字符串的地址中包含一个 _GET 变量。

然后,目标站点上的该页面将使用 _GET 变量来确定是否允许用户绕过登录过程(通过基于 Java 代码使用的密钥解密字符串)。

换句话说:

1) Java 说“loginid = 'johndoe-201111240500pm'”

2) 然后,Java 使用键“ABCDEF”将该变量编码为“4xQrSTy5”

3) Java 然后将用户定向到“http://www.testsite.com/externallogin.php?loginjava=4xQrSTy5”

4) 测试站点获取 _GET 变量并使用密钥“ABCDEF”对其进行解密

5) 测试站点然后将字符串吐出到 '-' 并获取用户名和生成时间。

6) 如果测试站点 $loginjava 变量时间在测试站点服务器时间的 60 秒内,则用户已登录。

【讨论】:

  • 好吧,差不多。乍一看,我不确定我是否遵循。用户来到 php 站点 (site1) 并单击将他们带到 java 站点 (site2) 的链接。会话是匿名的,因此无需登录。你布置台阶的方式似乎是在逆向前进,不是吗?无论如何,我想我明白了。如果我创建一个 ./externalsession.jsp 它将只实例化一个会话,它应该可以工作,PHP 将首先调用它,然后是它想要的 URL。有意义吗?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2014-08-17
  • 2020-11-18
  • 1970-01-01
  • 2012-03-05
  • 1970-01-01
  • 2015-09-01
  • 1970-01-01
相关资源
最近更新 更多