Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/278.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 谷歌用安全令牌为我的应用程序编制了索引。怎么用?如何预防?_C#_Asp.net_Security_Token_Google Index - Fatal编程技术网

C# 谷歌用安全令牌为我的应用程序编制了索引。怎么用?如何预防?

C# 谷歌用安全令牌为我的应用程序编制了索引。怎么用?如何预防?,c#,asp.net,security,token,google-index,C#,Asp.net,Security,Token,Google Index,我开发了一个具有“演示页面”的web应用程序。其中一个业务规则是取消试用用户的登录/密码功能,同时要求用户拥有有效的电子邮件来启动试用并单独记录用户的所有操作 在我看来,这很简单:让我们只使用URL中的“令牌”作为参数。我们要求用户输入电子邮件,然后用生成的令牌发送访问链接——很像API,但我们用JSON和XML显示HTML,而不是JSON和XML。我也这么想 像这样: 它一直运行良好,直到我注意到谷歌用有效的令牌为我们的一个访问链接编制了索引。怎么做 对我来说,这很奇怪。我们有使用相同功能的

我开发了一个具有“演示页面”的web应用程序。其中一个业务规则是取消试用用户的登录/密码功能,同时要求用户拥有有效的电子邮件来启动试用并单独记录用户的所有操作

在我看来,这很简单:让我们只使用URL中的“令牌”作为参数。我们要求用户输入电子邮件,然后用生成的令牌发送访问链接——很像API,但我们用JSON和XML显示HTML,而不是JSON和XML。我也这么想

像这样:

它一直运行良好,直到我注意到谷歌用有效的令牌为我们的一个访问链接编制了索引。怎么做

对我来说,这很奇怪。我们有使用相同功能的API—在URL中传递访问令牌—多年。谷歌和微软的API就是这样工作的。唯一的区别是我返回的是HTML而不是JSON

我们有数字证书,HTTPS和SSL/TLS加密。我们使用RNGCryptoServiceProvider生成安全令牌。我们只通过安全通道(电子邮件或https网站内部)发送代币

会发生什么事?我能做些什么来防止它


我的猜测是:谷歌Chrome,也许?

很可能是你的一个客户,你向他发送了带有嵌入令牌的访问URL,他最终将其发布到论坛/博客/页面,并最终被编入索引

场景: 例如,我通过电子邮件获得了你的URL,并决定在博客上介绍你的服务有多酷,然后列出URL,让人们看看。谷歌机器人会抓取我的博客页面,找到你的链接,访问它,然后根据页面上的所有相关关键词索引它。接下来,当您搜索与您的网站/业务相关的关键字时,此URL将显示为搜索结果

自检: 尝试在谷歌上搜索这个确切的URL,以显示任何可能列出它的页面

补救措施
robots.txt

为什么JSON API不会发生这种情况呢?:API是供机器使用的。开发人员知道API密钥的重要性。除非开发人员粗心/愚蠢到在博客上发布包含API键的API端点,否则这种情况不太可能发生


对于“演示”链接,除非您在电子邮件中声明,否则业务人员可能不知道他是否应该转发此链接。

尝试将您的访问令牌绑定到用户IP。网络爬虫并不是谷歌网页地址发现的唯一来源。此外,如果您不想将页面编入索引,只需将此信息添加到robots.txt。@YuryGlushkov我认为我实际上无法将令牌绑定到用户的IP,因为大多数都是动态的。然而,我想知道谷歌是如何找到我的安全令牌的。如果是自动完成的,也许可以手动完成,忽略robots.txt。至少他们正在扫描电子邮件、记录chrome操作等等。所以,即使你的链接没有列在任何地方,但任何人在Chrome上打开它,谷歌也知道。Robots.txt是唯一有效的正式保护,另一方面,如果你想要真正的,但不是正式的保护,它会有点硬。