【问题标题】:Remote access to laravel models远程访问 laravel 模型
【发布时间】:2018-03-16 00:23:06
【问题描述】:

是否有可能一个网站使用另一个 lavarel 网站的模型来访问数据库,而第一个网站没有硬编码 sql 凭据。但是使用硬编码登录第二个 lavarel 网站的凭据。

这样,第一个网站不必在其 ftp 服务器上拥有 sql 凭据,但仍可以通过其他网站访问数据库(通过他们个人登录该网站)。

如果这是不可能的,我想知道,有没有一种方法可以访问数据库而无需在任何地方硬编码凭据。

更新(实际问题) 特定用户只能看到数据库的一部分,因此我可以为不同的用户提供不同的凭据,他们都会在数据库中看到不同的东西

【问题讨论】:

    标签: sql database security laravel


    【解决方案1】:

    您所说的是 API。因此,您将在第一个网站上构建整个基础架构,然后在第二个网站上,它会对第一个网站进行某种调用以获取所需的信息,通常使用某种凭据或访问令牌。

    通过这种方式,您可以允许世界上的任何人与您的网站进行交流,就像 Facebook 或 Twitter 所做的那样。

    就访问您的数据库而言,您需要在某处告诉您的应用要使用的凭据,因此从技术上讲,您确实需要在某处对其进行硬编码,因为它们不能以某种方式神奇地组成一些凭据来访问数据库。

    【讨论】:

    • 我明白,进一步的搜索也让我想到了为第二个站点使用 SQL 视图和不同凭据的想法。这样它就无法访问只应该对第一个网站可见的存储信息。 (对于我使用第一个和第二个的示例,但实际上应该有多个网站应该具有部分远程访问权限。)实际上我的问题是:只有一部分数据库应该对特定用户可见,所以我可以为不同的用户提供不同的凭据,他们都会在数据库中看到不同的东西。
    【解决方案2】:

    如果定义了不同的用户:

    • 使用 laravel model/db 事件将数据复制到数据库 用户。
    • 或者使用 cron 作业同步每个数据库..

    这些有利于避免安全传输问题。

    【讨论】:

      猜你喜欢
      • 2018-02-02
      • 1970-01-01
      • 2021-01-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多