oauth消费者文件报告了可疑文件

时间:2011-12-15 11:00:00

标签: php zend-framework oauth

我刚刚在一个网站上实现了oauth并且它工作得很好,但是当人们登录临时文件时似乎已经创建了。 WHM不断给我发电子邮件告诉我这个问题:

Time:   Thu Dec 15 10:50:52 2011 +0000
File:   /tmp/root/openid/consumer/assoc_handle_ecde01da0a6bbfaed7f04379150d3c9f
Reason: Suspicious symlink (->/tmp/root/openid/consumer/assoc_url_988e35039cce1819e501ae6e1217c786)
Owner:  X:X (513:509)
Action: No action taken

现在,很明显这是一个临时文件。但有两个问题:

  1. 为什么需要登录? (纯粹据我所知)
  2. 如何从该文件夹中删除它或确保它不会保留符号链接
  3. oauth由Zend Framework的库

    处理

1 个答案:

答案 0 :(得分:1)

这是临时文件背后的原因,这是来自Zend OpenID Introduction

  

OpenID使用者与之建立可选的关联   提供者使用Diffie-Hellman密钥。结果,双方都有了   共同的“共享秘密”,用于签名和验证   随后的消息。

因为它是可选的,你可以通过将true作为第二个参数传递给Zend_OpenId_Consumer来禁用它,将其置于“哑模式”中:

$consumer = new Zend_OpenId_Consumer(null, true);

以下是哑模式的注意事项:

  

OpenID身份验证支持“智能模式”和“哑模式”,以适应不同功能的消费者。智能消费者在开始时会做更多的工作以便以后保存自己的工作,但需要本地缓存状态信息。一个愚蠢的消费者是完全无状态的,但需要额外的HTTP请求。 Source

您也可以控制缓存文件的位置,以避免发出警告。

$path        = '/home/you/zend/application/data';  // dir to store associations
$authStorage = new Zend_OpenId_Consumer_Storage_File($path);
$consumer    = new Zend_OpenId_Consumer($authStorage);