CodeIgniter için kullanılabilecek herhangi bir açık kaynak kodlu, PHP tabanlı, rol tabanlı erişim kontrol sistemi var mı?
Brandon Savage veya rol tabanlı erişim başarmak olmayabilir onun PHP paketi "ApplicationACL" konulu bir sunum yaptı. PHPGACL de işe yarayabilir, ama emin için söyleyemem.
Sana ne söyleyebilirsiniz, ancak, (aynı anda birden çok rol kontrol alt sınıf gerekecek ancak) Zend Framework Zend_ACL bileşen rol tabanlı kurulumları yapmak olacaktır. Bu ağrı size Zend_ACL dışarı çekmek gerekir Verilen, ben monolitik download (veya SVN çıkış) herhangi bir dış bağımlılıkları vardır inanmıyorum.
Depolama agnostik olsa Zend_ACL hakkında güzel bir şey. Ya bunu her zaman yeniden olabilir veya Serileştirilecek tasarlanmış (her ikisi bir arada kullanmak, önbellek için serialize ve DB'den yeniden).
Belki soruyu isunderstanding, ama (ACL) avoid Erişim Kontrol Listeleri Role-Based Access Control (RBAC) bütün nokta değildir değilim?
RBAC differs from access control lists (ACLs) (...) in that it assigns permissions to specific operations with meaning in the organization, rather than to low level data objects. For example, an access control list could be used to grant or deny write access to a particular system file, but it would not say in what ways that file could be changed. In an RBAC-based system an operation might be to create a 'credit account' transaction in a financial application (...). The assignment of permission to perform a particular operation is meaningful, because the operations are fine grained and themselves have meaning within the application. (Quote: Wikipedia)
Ben Zend_ACL veya bahsedilen diğer uygulamaları hakkında özelliklerini bilmiyorum, ama onlar ACL tabanlı ise, ben rol tabanlı kimlik doğrulaması için bunları kullanarak tavsiye etmem.
Sana ilgi olabilir PHP-Bouncer adında bir Açık Kaynak proje hazırlandı. Hala oldukça genç, ama iyi çalışıyor ve yapılandırmak kolay. Mevcut çözümlerin hiçbiri benim ihtiyaçlarını karşılamak gibi görünüyordu çünkü gelişmekte sona erdi. Bu yardımcı olur umarım!
phpgacl http://phpgacl.sourceforge.net/ genel bir acl olduğunu tabanlı erişim kontrolü çerçeve
Ben herhangi bir CI özel uygulama hakkında bilmiyorum da, ben sadece phpgacl çalışması için ana sınıfı dosyaya ihtiyacınız olduğunu biliyoruz. Yani ben CI ile entegrasyon herhangi bir sorun olmayacağını inanıyoruz. (Ben CI ile passingly çalışmak ettik)
CodeIgniter DX_Auth eklenti deneyin. Ben DX_Auth fonksiyonlara benzer bir (daha doğrusu, süperset) üzerinde çalışıyorum. CI addon benim set menüler ekranı (yani CSS aracılığıyla kontrol edilebilir) içerir kontrolör çağrılır ve diğer özellikler önce, Rol-bazlar controll erişebilirsiniz. Ben yakında yayınlamayı umuyoruz. Ben bunu yaparken, proje URL verecektir
jFramework, tek bir SQLite veritabanı dosyası üzerinde çalışabilir (kriterleri içerir) mevcut en hızlı ve iyice test olduğu söylenir geliştirmeleri ile standart NIST seviye 2 RBAC bir eldiven gibi çalışır.
JFramework DBal bir bağımlılık var ama istediğiniz DBal ile kod DBal SQL sorguları yerine basit ve tabii bir SOP şekilde jFramework kullanabilirsiniz.
Rbac = ACL - Roland bu sorunun tek doğru cevabı vardır.
BTW tabii ki izin sistemi her türlü uygulamak için bir çerçevenin önemli bir parçasıdır - bu sizi iyi engeneered rbac sistemi vermezse en azından hiçbir nokta, bir çerçeve kullanarak var - daha iyi bir basit şablonu kullanıyor olabilirsiniz daha sonra herhangi bir ORM tabaka sistemi.
It is a common antipattern in the php world, that frameworks like Ruby or Django are "cloned" only as a subset of what these modern frameworks deliver - as a typical syndrome yuo see a lack of good ACL or RBAC integration into these frameworks - what essentially is a joke. There is currently only the Yii PHP Framework that comes with a decent RBAC implementation.
Ben iz soğuk olduğunu biliyorum, ama yeni bir proje daha ortaya çıktı:
PHP-rbac Tabanlı Erişim Kontrolü PHP Hiyerarşik NIST Düzey 2 Standart Rolü ve oldukça olgun. Ayrıca bir OWASP projesidir.
Sana http://phprbac.net de beğeneceğinizi umuyoruz
Burada bulunan PHP için iki rbac kütüphaneler:
Ben aslında PolyAuth yılında ilkini kullandı: https://github.com/Polycademy/PolyAuth/
Bu NIST seviyesi 1 RBAC içeren bir tam özellikli bir auth kütüphane bulunuyor. Ve evet, rbac ACL'deki olarak aynı değildir. Ben de CodeIgniter kullanmak, yapmanız gereken tüm PDO sürücüsünü ve bağlantı kimliği geçmektedir. http://codebyjeff.com/blog/2013/03/codeigniter-with-pdo: Bunu yapmak için nasıl bu öğretici bakın