子项目站点的通用用户配置文件——从主服务器安全地传输用户数据
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 感兴趣。
两台服务器都运行 php 和 mysql 服务。 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 加密在服务器之间发送的消息。
【讨论】:
以上是关于子项目站点的通用用户配置文件——从主服务器安全地传输用户数据的主要内容,如果未能解决你的问题,请参考以下文章