ユーザー認証アーキテクチャを作成する方法を理解しようとしています。ユーザーごとに通常の 1 つのアカウントの代わりに、1 つのアカウント (電子メールとパスワード) を持つシステムを開発しています。このアカウントは、さまざまな小さなアカウント (異なる ID、表示名、アクセス ロールを持つ... 基本的には別のテーブル) にリンクされています。データベースで)。これらの小さなアカウント、または「サブ」アカウントは、互いに完全に独立しています。
現在、「マスター」アカウントにログインできる場所まで機能しており、さまざまなサブアカウントを切り替えるために使用されるユーザーメニューにドロップダウンリストがあります。ただし、アカウントを切り替えて永続的に維持する方法に固執しています。
CWebUser を拡張しsetSub($id)
、切り替え先のサブアカウントの ID を取得するメソッドを追加し、$currentSub
変数をサブアカウント モデルに設定しようとしましたが、うまくいかないようです...どこから始めればよいかわかりませんこれとともに。
私が本当に必要としているdisplayName
のid
は、永続化するサブアカウントと、サイトの任意のページでこれらの値を変更する方法だけです。次に、パーソナライズされたページで ID を使用して、そこから移動できます ( として設定されている「マスター」アカウントの ID を使用するのではなくYii::app()->user->id
)。変数を設定して永続化する方法がわからないだけだと思います。