验证点击是否来自特定网站

问题描述 投票:-2回答:1

我正在建立一个自定义的身份验证过程,在该过程中,每个通过单击网站B上的链接(包含唯一的哈希)而来的每个用户都会自动登录到网站A上。登录过程不是问题。

问题是关于安全性:如何确保用户来自特定网站而不是其他网站?我可以验证变量$_SERVER['HTTP_REFERER'],但可以很容易地对其进行欺骗。是否有一种方法可以获取引荐来源IP(而不是$_SERVER阵列中的客户端计算机IP)或其他任何方法来保护此过程?

php http security authentication
1个回答
0
投票
建议1

在第一个网站上单击链接时,将时间和用户ip存储在数据库中。

[然后在第二个网站上提出用户请求时,可能需要花费时间和用户IP,并询问第一个网站最近是否被该IP单击了链接。

建议2

客户端站点上的链接可以链接到其站点上使用PHP的file_get_contents()显示链接页面的页面。因为是PHP请求链接的页面,所以用户无法欺骗document.referrer。我不知道这将如何影响cookie,外部引用等。

<?php $linkedPageUrl = $_GET['linked-page-url']; var_dump(file_get_contents($linkedPageUrl)); ?>

© www.soinside.com 2019 - 2024. All rights reserved.