2013-08-26 31 views
0

我試圖在Yii中使用hybridauth擴展名。沒有srbac擴展是一切都好,問題是我需要啓用訪問該模塊的未經授權的用戶使用它。我試過alwaysAllowed的規定設置屬性在srbac guide在Yii的srbac中啓用未經授權的用戶訪問模塊

操作被命名爲 [的moduleId]/[子目錄] [ContollerId] [動作]

這樣的:

'alwaysAllowed'=>array(//default: array() 
      'SiteLogin','SiteLogout','SiteIndex','SiteAdmin', 
      'SiteError', 'SiteContact','[email protected]'), 

(我的分隔符是@),它不起作用。我已經調試它,它似乎Hybridauth控制器(DefaultController)在功能上_extendsSBaseController不會被識別爲SBaseController(模塊/巴茨/控制器/ AuthItemController.php):

if ($cont instanceof SBaseController) { 
    return true; 
} 

我的控制器類是擴展SBaseController它適用於不在模塊中的控制器,但不適用於此模塊。我也試圖用SBaseController直接擴展DefaultController而沒有運氣。

如何設置模塊始終是否允許?

回答

0

我已將[email protected][email protected]添加到allways允許列表中,現在它可以工作。該字符串的結構可見於功能beforeAction中的srbac/Controllers/SBaseController.php

$access = $mod . $controller . ucfirst($this->action->id); 
相關問題