0

アクセス制御のための権利モジュールを含むいくつかのモジュールを使用する Yii アプリケーションを開発しています。それらはすべて同じ「modules」フォルダーにあり、同じ config/main.php ファイルで構成されています。また、アプリケーションにはエントリ スクリプトが 1 つしかありません。

ただし、Rights モジュールは別のアプリ セッションを使用し、他のすべてのモジュールは別のアプリ セッションを使用していることに気付きました。このため、ユーザー セッションは権利と共有されません。

yii モジュールでこのような問題に遭遇した人はいますか? 助けてください。ありがとう!

私の設定ファイル:

'rights'=>array(
            'debug' => true,
            'superuserName'         => 'Super Administrator', // Name of the role with super user privileges.                       
            'authenticatedName'     => 'Customer', // Name of the authenticated user role.
            'userIdColumn'          => 'id', // Name of the user id column in the database.
            'userNameColumn'        => 'username', // Name of the user name column in the database.
            'enableBizRule'         => true, // Whether to enable authorization item business rules.
            'enableBizRuleData'     => true, // Whether to enable data for business rules.
            'displayDescription'    => false, // Whether to use item description instead of name.
            'flashSuccessKey'       => 'success', // Key to use for setting success flash messages.
            'flashErrorKey'         => 'error', // Key to use for setting error flash messages.
            //'baseUrl'             =>'/rights', // Base URL for Rights. Change if module is nested.
            //'layout'              => 'rights.views.layouts.main', // Layout to use for displaying Rights.
            //'appLayout'           => 'application.views.layouts.main', // Application layout.
            //'cssFile'             => 'rights.css', // Style sheet file to use for Rights.
            'install'               => false, // Whether to enable installer.
        ),
4

1 に答える 1

0

2日間試した後、解決策を見つけました。

システムで 2 つの異なるキー プレフィックス (stateKeyPrefix) を使用していることに気付きました。1 つは権限用、もう 1 つは他のモジュール用です。これは、メイン構成ファイルで単一のキー プレフィックスを使用するように構成できます。

'user'=>array(
            'class'=>'RWebUser',
            'allowAutoLogin'=>true, // enable cookie-based authentication
            'stateKeyPrefix'=>'f298d9729c7408c3d406db95a9639204', // some random value
    ),

これが同じ問題を抱えている人に役立つことを願っています。

于 2013-04-24T10:28:06.200 に答える