Ich möchte einige Aktionen nur aufrufen, wenn der Benutzer angemeldet ist. Wie es geht, ohne jedes Mal den Benutzer-Login-Status zu überprüfen?Wie verbieten Sie den Aufruf von Aktionen basierend auf dem Benutzer-Login-Status in yii2?
0
A
Antwort
1
Sie benötigen eine behaviors()
Methode zu Ihrem Controller wie hinzuzufügen:
public function behaviors()
{
return [
'access' => [
'class' => \yii\filters\AccessControl::className(),
'only' => ['login', 'logout', 'signup'],
'rules' => [
[
'allow' => true,
'actions' => ['login', 'signup'],
'roles' => ['?'],
],
[
'allow' => true,
'actions' => ['logout'],
'roles' => ['@'],
],
],
],
];
}
die Rollen oben sind @
für alle Benutzer definiert, die in und ?
für alle Benutzer angemeldet sind, die nicht angemeldet sind. In Ihrem Fall sind Sie daran interessiert, die Rolle auf @
zu setzen.
Sie können diese natürlich durch beliebige rbac Rollen/Berechtigungen ersetzen. Here's more information on authorization from the Yii2 guide
Verwandte Themen
- 1. Wie verbieten Sie den Aufruf einer Methode C#
- 2. Wie verbieten Sie den Aufruf der .env Konfigurationsdatei?
- 3. Wie werden Aktionen basierend auf dem Zustand der App ausgeführt?
- 4. VBA-Aktionen basierend auf Zelleninhalt
- 5. YII2 Wie Widget von Aufruf boostrap.js
- 6. verschachtelte Controller und Aktionen in url yii2
- 7. Automatisierte Aktionen - Mausklicks basierend auf dem angezeigten Text
- 8. Yii2: REST API Aktionen in ActiveController
- 9. Wie erhalten Sie den Zeichensatz für Zahlen in einem Delphi 6-Programm basierend auf dem Gebietsschema?
- 10. So führen Sie den Konsolenbefehl in yii2 aus dem Web
- 11. Aufruf Redux Aktionen von Prospekt Karte
- 12. Wie verbieten Scrollview Scrolling durch den Stift?
- 13. Yii2 ändern aktive Datenbank basierend auf Controller
- 14. Wie verbieten Sie Rücktaste in WPF
- 15. Holen Sie sich den Schlüssel basierend auf dem Wert Artikel
- 16. Ändern des Klassenobjektarguments basierend auf dem Aufruf einer Methode
- 17. Ermitteln Sie den Namen einer Konstanten basierend auf dem Wert
- 18. Aufruf [autorisieren] web api Aktionen von Ajax
- 19. Erlauben und Verbieten in Robots.txt
- 20. Yii2: Ausschließen bestimmter Controller-Aktionen von '$ this-> goBack()'
- 21. Aufruf Methode basierend auf dem Typ der generischen Liste Element
- 22. Wie man den Ausgangstyp basierend auf dem Parameter
- 23. Aufruf von Klassen in/lib von Controller-Aktionen
- 24. Aktionen (Abspielen von Sound) basierend auf Redux speichern Änderungen
- 25. Wie erhalten Sie den Indexpfad basierend auf Abschnitten in uitableview?
- 26. Wie verbieten Sie psql Befehl Geschichte Duplikate
- 27. So starten Sie den Handler nach dem Aufruf von removeCallbacks oder removeCallbacksAndMessages auf Handler in Android
- 28. Aufruf innere Funktion basierend auf dem Argument übergeben äußere Funktion
- 29. Wie verbieten Sie das britische Pfund (£) Zeichen auf einer Website?
- 30. Wie mehrere Validierungen basierend auf einem http-Aufruf in Angular
Sie müssen [Zugriffskontrolle] einrichten (http://www.yiiframework.com/doc-2.0/yii-filters-accesscontrol.html) – Tony