Casbin
Pustaka keizinan yang menyokong model kawalan akses seperti ACL, RBAC, ABAC untuk Golang, Java, C/C++, Node.js, Javascript, PHP, Laravel, Python, .NET (C#), Delphi, Rust, Ruby, Swift (Objective-C), Lua (OpenResty), Dart (Flutter), dan Elixir
Model kawalan akses hibrid
Dalam Casbin, model kawalan akses diasingkan ke dalam fail CONF berdasarkan metamodel PERM (Dasar, Kesan, Permintaan, Penanda). Oleh itu, menukar atau meningkatkan mekanisme penggunaan kuasa untuk satu projek adalah sama mudahnya dengan mengubah suai satu konfigurasi.
Penyimpanan polisi fleksibel
Selain memori dan fail, polisi Casbin boleh disimpan di banyak tempat. Pada masa ini, berpuluh-puluh pangkalan data disokong, dari MySQL, Postgres, Oracle hingga MongoDB, Redis, Cassandra, AWS S3. Semak senarai penuh yang disokong di: penyesuai.
Antarabangsa & lintas platform
Casbin diwujudkan dalam Golang, Java, PHP dan Node.js. Semua pelaksanaan berkongsi API dan tingkah laku yang sama. Anda boleh belajar Casbin sekali dan menggunakannya di mana-mana.
Pematuhan Polisi
In Casbin, the policy storage is implemented as an adapter(aka middleware for Casbin). To keep light-weight, we don't put adapter code in the main library (except the default file adapter). A complete list of Casbin adapters is provided as below. Any 3rd-party contribution on a new adapter is welcomed, please inform us and I will put it in this list:) For details of adapters, please refer to the documentation: penyesuai.Penguatkuasaan polisi pada skala besar
Sesetengah penyesuai menyokong pengurusan polisi bertertib. Ini bermakna polisi yang dimuat oleh Casbin adalah subset dari polisi dalam penyimpanan berdasarkan penapis yang diberikan. Ini membolehkan penguatkuasaan polisi yang cekap dalam persekitaran berbilang penyewa yang besar apabila menghuraikan seluruh polisi menjadi penghambat prestasi.Pengurus peranan
Pengurus peranan digunakan untuk mengurus hierarki peranan RBAC (pemetakan pengguna-peranan) dalam Casbin. Pengurus peranan boleh mengambil data peranan dari peraturan dasar Casbin atau sumber luaran seperti LDAP, Okta, Auth0, Azure AD, dll. Kami menyokong pelaksanaan yang berbeza bagi pengurus peranan. Untuk mengekalkan ringan, kami tidak meletakkan kod pengurus peranan dalam pustaka utama (kecuali pengurus peranan lalai). Senarai lengkap pengurus peranan Casbin disediakan sebagai: pengurus-peranan.Siapa yang menggunakan Casbin?
Beratus-ratus projek menggunakan Casbin, dari syarikat Fortune 500 yang mapan hingga permulaan baru yang popular. Jika anda ingin tahu apa yang boleh dicapai dengan Casbin, lihat aplikasi ini!