Php 会话设置cookie参数是否安全?

Php 会话设置cookie参数是否安全?,php,session,session-cookies,Php,Session,Session Cookies,我们目前使用的是一个自定义登录系统,它在一个站点的数据库中设置一个哈希,然后当用户在域和子域之间传输时,它会将其登录。它并不总是让用户登录,所以他们点击登录链接/按钮,它会带他们进入登录,如果他们有会话,它会加载会话,否则会显示登录页面 我们希望摆脱这种状况,使用更好的东西。在php中有session\u set\u cookie\u params,我们想知道这是否安全 session_set_cookie_params(3600, "/", ".example.com"); 如果这不是跨多个

我们目前使用的是一个自定义登录系统,它在一个站点的数据库中设置一个哈希,然后当用户在域和子域之间传输时,它会将其登录。它并不总是让用户登录,所以他们点击登录链接/按钮,它会带他们进入登录,如果他们有会话,它会加载会话,否则会显示登录页面

我们希望摆脱这种状况,使用更好的东西。在php中有
session\u set\u cookie\u params
,我们想知道这是否安全

session_set_cookie_params(3600, "/", ".example.com");
如果这不是跨多个域使用会话的好方法,那么哪种方法更好


我们还有一些子域使用自己的登录系统,同一用户在该系统上有不同的用户名/密码,这/那会有问题吗?我们认为,两个不同的人有可能有相同的会话ID,将两个不同的人登录到同一个帐户,因为他们管理自己的会话。

< P>这是一个很好的方法,但是你必须考虑到这一点,如果希望参与同一会话的所有域/子域不在同一服务器上或驻留在不同的应用程序中,则需要提供一些通用的后端会话存储机制,以便所有应用程序都可以访问会话数据


至于处理多个登录,您可能需要一种逻辑方式将登录链接在一起,以便您能够理解一个登录下的有效会话可以传输到另一个域上的另一个登录。这确实是您最大的安全问题,应该通过实现单一登录机制来解决。

为什么/从什么进行安全保护?安全性不是营销单上的清单。你不能像在食物上撒盐一样,通过撒一点代码来神奇地“安全”一些东西。我想主要是用户a以用户B的身份登录。我也在读一篇博客,上面说不要与子域共享,但他们从来没有说为什么。我们使用memcache进行会话存储,所以应该链接它们。您如何建议从服务A登录到服务B,其中A上我的id=1,B上您的id=1?我现在将从数据库中提取id为1的数据,这将是你…@TheBoogieMan,这就是问题所在,不是吗。除非您能够将每个应用程序中的ID映射到某个唯一的、特定于用户的ID,否则您无法处理跨越应用程序边界的用户。希望您有一些通用的方法跨应用程序链接帐户(即电子邮件地址、用户名等)。3我们的服务在没有映射的情况下可以正常工作,因为它们共享相同的用户群,其余的都有自己的用户群(由于CTO设计不佳)。但是是的,它们确实都包含用户的电子邮件地址,可以用来将不相关的应用链接在一起!