我被要求建立一个用PHP构建的网站,但发现他们有另一个系统正在运行,他们希望保留这个系统在ASP.net中构建。
是否可以进行单点登录,例如php站点将允许用户注册并进入该站点,然后这些详细信息将能够传递到MSSQL数据库或至少与ASP.net后端的谈话或某事沿着会话和存储在浏览器中的cookie?
或者简单的解决方案是扩展ASP.net后端的功能并在前端使用ASP,以便整个站点都是ASP.net。
答案 0 :(得分:2)
你在这里谈论很多不同的事情。
是的,ASP可以读/写PHP会话数据文件(尝试使用谷歌进行一些实现)。
是的,您可以在两个系统中使用相同的身份验证令牌 - 假设您知道ASP如何存储/散列数据
是的,您可以在ASP中实现Web服务,以便为PHP代码提供身份验证服务
是的,您可以使用单点登录访问这两个系统。
不,你不能只是放入你的PHP并希望它能够正常工作。
答案 1 :(得分:1)
我不确定这是否可行,但我开始从像Memcached这样的外部存储中寻找解决方案 - 我认为它也有.net扩展,这样你就可以通过访问创建自己的会话存储来自双方。
答案 2 :(得分:0)
如果域(或FQDN)永远不会更改,那么在从PHP站点切换后,用户仍将在ASP站点上“登录”。当然,在ASP端看起来登录它必须读取有效的PHP会话ID(来自cookie),并获取相关数据。你可以让PHP的会话回调写一个ASP和PHP都可以在文件中轻松读取的格式,比如JSON(而不是序列化的PHP数组),或者你可以只使用数据库两个站点支持来验证会话ID(可能更简单,更好用于聚类)。 PHP和ASP都可以使用MSSQL数据库。