两个不同 Laravel 应用程序之间的交叉身份验证

Que*_*ing 8 php authentication basic-authentication laravel laravel-5

在此输入图像描述

背景

这两个应用程序是用 PHP Laravel 开发的 Web 应用程序。在应用程序中,应用程序1和应用程序2是两个不同的应用程序,由两个不同的团队管理。应用程序 1 用于修剪视频,而应用程序 2 用于展示其视频。

目前两个应用的登录方式都是邮箱密码登录。

算法:

  1. 在应用程序1(例如Facebook)中,用户可以登录系统并上传视频以及一些表单详细信息。
  2. 然后,应用程序 1 修剪并处理视频并保存在文件系统中。
  3. 处理完成后,应用程序 1 将POST结果发送给应用程序 2(例如 Instagram)。
  4. 在应用程序 2 中,视频会与相应的用户信息一起上传并向公众展示。

问题

  • APP 1 如何对 APP 2 中的用户进行身份验证。
  • 在提供安全身份验证的同时,最好的方法和最用户友好的方法是什么

我关心的是应用程序 2 的身份验证部分。由于用户登录方法不同,我们如何在将视频发送到应用程序 2 之前对应用程序 1 中的用户进行身份验证?

我在 Google 上找到的一些作品

第一种方式:哈希(主密钥+ [INFO])

  1. 创建一个仅 App 1 和 App 2 知道的主密钥。然后使用一些额外信息(例如 time())对主密钥进行哈希处理。然后应用程序 2 可以使用自己的主密钥验证哈希信息,如果结果相似,则用户可以通过身份验证过程并直接在应用程序 2 上发布视频。

第二种方式:OAUTH 令牌

  1. 用户必须登录应用程序 2 并生成 OAUTH 令牌。然后,用户需要在应用程序 1 上提交 OAUTH 令牌以允许视频发布。这种方法并不是真正的用户友好,因为这种方法在某种程度上是开发人员的方法。

不太确定用于此类身份验证的术语。请随时在评论部分告诉我。非常感谢。

小智 0

通常,如果您有多个共享用户凭据的应用程序,则有一个处理用户会话的 oauth 服务。

例如,谷歌有accounts.google.com作为登录页面。因此,如果您想登录 gmail / youtube,您将被重定向到accounts.google.com 进行会话检查。如果您已经登录,那么它会自动将您重定向到您将使用的服务。

在您的情况下,您可以将您的应用程序之一作为登录服务,如果其他应用程序想要登录,它可以检查登录服务中的会话,然后重定向到其他应用程序。

CMIIW