Adakah anda menggunakan ControllerListener.php untuk pemantauan/
1. Saya ingin tahu cara menyekat hak akses beberapa berkas melalui pengawal yang sama Contohnya, jika pengguna tidak log masuk, lompat terus ke halaman utama atau halaman log masuk.
2. Cara menetapkan kebenaran akses untuk satu berkas. Ia berasaskan pengguna
Ia terlalu fleksibel dan mempunyai terlalu banyak kaedah Mari tulis satu aspek buat masa ini:
Terdapat pakej fungsi pengguna pihak ketiga: FOSUserBundle
Jika anda menulisnya sendiri, sebelum menggunakan borang log masuk, anda perlu memberitahu rangka kerja cara maklumat pengguna disimpan Jika anda menggunakan Doktrin dan pangkalan data, anda perlu menulis Entiti Pengguna dan melaksanakan antara muka SymfonyComponentSecurityCoreUserUserInterface.
(1) Buat kelas pengguna
(2) Gunakan kelas pengguna ini
(3) Tambah kawalan kebenaran
Pengesahan keselamatan boleh dikawal pada peringkat URL Jika anda membenarkan berkas anda berkongsi peraturan URL tertentu, anda boleh menggunakan peraturan untuk mengawalnya:
Anda juga boleh menggunakan JMSSecurityExtraBundle yang disertakan dengan Symfony 2, yang boleh dikonfigurasikan dengan anotasi:
Symfony 2 mempunyai banyak item konfigurasi komponen keselamatan, anda boleh merujuk kepada: http://symfony.com/doc/current/refere...
Pengesahan borang (form_login), yang merupakan borang kotak log masuk yang paling biasa, ialah salah satu kaedah pengesahan yang disokong oleh komponen keselamatan Symfony 2 secara lalai Lain-lain termasuk X.509, HTTP Basic, HTTP Digest, dsb., dan juga boleh disahkan melalui pihak ketiga Pakej kod menambah kaedah pengesahan lain. Item konfigurasi pengesahan borang adalah seperti berikut, saya telah mengulas beberapa item yang biasa digunakan:
Terdapat juga ACL terbina dalam yang memberikan kawalan yang lebih halus. Tetapi itu satu lagi bab besar.
Terima kasih banyak atas jawapan anda ACL terbina dalam sememangnya sangat berkuasa