Hallo Leute,
ich bin neu zu Yii gestossen. Da ich vorher nichts mit MVC/Frameworks zu tun hatte, sondern meine PHP-Projekte immer von 0 auf gecoded hab, stoss ich bei einigen Sachen an - ich erlaube mir deshalb hier nach Hilfe zu fragen.
Aktuell kämpf ich mit User-Berechtigungen. Folgendes Szenario:
Ich hab 4 Gruppen in einer Tabelle: ID 1 = Admin, 2 = Mods, 3 = VIP, 4 = User.
Für alle User hab ich eine Tabelle User, entsprechend related. Soweit, so gut.
Ich hab auch ein Admin-Modul erstellt, darauf haben alle ab Level VIP Zugriff (Also Mods und Admins auch). Zudem hab ich über den Gii ein User-Modul & CRUD innerhalb vom Modul Admin erstellt.
Nun möchte ich eine Userverwaltung im Admin einbauen, mit der Begrenzung dass der jeweilige User nur auf die Daten der tieferen Gruppen Zugriff hat. Sprich ein VIP kann User editieren, der Mod kann VIP und User editieren etc.
Jetzt steh ich ein bisschen am Berg und suche nach der besten Vorgehensweise…
Im admin-view hab ich zBsp. folgendes beim CGridView eingetragen:
array(
'name'=>'group_id',
'value'=>'$data->group->name',
'filter' => CHtml::listData(Group::model()->findAll('id > '.Yii::app()->user->group),'id','name'),
),
Funktioniert - nur die ‘berechtigten’ Records werden angezeigt. Nur kann dann natürlich jemand auf der Update-Seite die ID in der URL anpassen. Ich könnte zwar überall diese Checks reinmachen, nur wird das dann auch sehr schnell unübersichtlich…
Was wäre denn hier die beste Vorgehensweise?
Vielen Dank
TheD