子项目站点的通用用户配置文件——从主服务器安全地传输用户数据

Posted

技术标签:

【中文标题】子项目站点的通用用户配置文件——从主服务器安全地传输用户数据【英文标题】:Universal user profile for subproject sites – securely trasfering user data from main server 【发布时间】:2017-09-12 15:16:19 【问题描述】:

我有一个带有用户系统的主项目站点 (A)(它应该为注册用户显示我所在国家/地区的所有学生比赛和学术活动。该站点还允许用户签名他们参加这些活动和其他一些事情。A 帐户仅包含基本信息,例如姓名、学校、电子邮件、感兴趣的领域……

此外,我正在建立一个站点 (B) 作为“子项目”(用于寻找兼职工作并与学科领域的更大组织合作。此外,还会有更多类似的未来的子项目,因此 (B) 代表一组子站点)。 B 站点需要与 A 中相同的数据,并需要填写更多数据。所有子项目将由与主项目相同的一组人员维护.

我认为让用户能够使用来自 A 的帐户登录到 B 网站会很好,但也可以注册到 B strong> 使用个人帐户,因为用户通常不必只来自 A 主站点,并且可能只对 B 感兴趣。


两台服务器都运行 phpmysql 服务。 B 站点不会与 A 托管在同一台服务器上,因此它们显然必须通过 Internet 进行通信。

到目前为止,我计划了以下场景:

    用户使用来自 A 的凭据登录到 B B 对密码进行哈希处理,并通过安全通道将其与用户名一起发送到 A A 将用户和散列密码与其数据库进行比较,然后返回错误消息或 B 登录用户

但我的主要问题是安全通信部分,我已经查找了一些基础知识,例如服务器需要证书才能相互识别,但我还没有找到任何具体的代码开始。

存储用户数据也存在问题,因为B需要能够在公共网站上显示某些字段,我认为在远程数据库中查找它们是无稽之谈。但这会导致将 A 用户配置文件字段存储在 B 服务器上,因此无论如何做整个事情都是没有用的。

如有任何建议,我将不胜感激!

【问题讨论】:

是否要求 A 和 B 位于不同的服务器上?如果没有,它会更安全,也更容易管理。它们可能是不同的站点,但如果在同一台服务器上,则为 org ID 添加一列将允许您将数据分开,同时还允许您进行跨组织查询。您还可以维护每个组织的用户帐户,同时在需要时仍允许访问其他组织的相关信息。 另一种方法是使用远程访问另一个数据库。 这看起来是最方便的方式,但我不希望 B 成为 A 的子域(如 b-site.a -site.com)。但是是否有可能以不需要子域的方式做到这一点,并且两个站点仍将托管在同一台服务器上? 每个人都可以拥有自己的域。如何做到这一点取决于您的主机,但如果他们有 cPanel,应该很容易。使用共享主机,访问多个数据库非常容易。 【参考方案1】:

如果您有管理员访问服务器的权限,那么您可以设置站点到站点 *** 以保护服务器之间的通信。

您还可以在服务器上安装 SSL 证书并通过 SSL 安全通道发送数据

另一种选择是使用 Php 加密在服务器之间发送的消息。

【讨论】:

以上是关于子项目站点的通用用户配置文件——从主服务器安全地传输用户数据的主要内容,如果未能解决你的问题,请参考以下文章

window服务器开站点(不通用)

将 Codeigniter 项目从主域复制到子域

全局组,通用组,本地组

SpringBoot 安全漏洞之Referer 跨站点攻击解决方案

Linux服务器通用安全加固指南

如何将框架项目添加到主项目并从主项目配置框架项目的设置