Bỏ qua đến nội dung chính

Casbin

Thư viện ủy quyền hỗ trợ các mô hình kiểm soát truy cập như ACL, RBAC, ABAC cho Golang, Java, C/C++, Node.js, Javascript, PHP, Laravel, Python, .NET (C#), Delphi, Rust, Ruby, Swift (Objective-C), Lua (OpenResty), Dart (Flutter) và Elixir

Bắt đầu
[object Object]

Mô hình kiểm soát truy cập lai

Trong Casbin, một mô hình kiểm soát truy cập được trừu tượng hóa thành một tệp CONF dựa trên siêu mô hình PERM (Chính sách, Hiệu ứng, Yêu cầu, Trình so khớp). Vì vậy, chuyển đổi hoặc nâng cấp cơ chế ủy quyền cho một dự án chỉ đơn giản như sửa đổi một cấu hình.

[object Object]

Lưu trữ chính sách linh hoạt

Ngoài bộ nhớ và tệp, chính sách Casbin có thể được lưu trữ vào nhiều nơi khác nhau. Hiện tại, hàng chục cơ sở dữ liệu được hỗ trợ, từ MySQL, Postgres, Oracle đến MongoDB, Redis, Cassandra, AWS S3. Xem danh sách đầy đủ được hỗ trợ tại: bộ điều hợp.

[object Object]

Đa ngôn ngữ & đa nền tảng

Casbin được triển khai trong Golang, Java, PHP và Node.js. Tất cả các triển khai đều chia sẻ cùng API và hành vi. Bạn có thể học Casbin một lần và sử dụng nó ở mọi nơi.

Lưu trữ Chính sách

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: bộ điều hợp.
Policy Persistence
Policy enforcement at scale

Thực thi chính sách quy mô lớn

Một số bộ điều hợp hỗ trợ quản lý chính sách được lọc. Điều này có nghĩa là chính sách được tải bởi Casbin là một tập hợp con của chính sách trong lưu trữ dựa trên một bộ lọc đã cho. Điều này cho phép thực thi chính sách hiệu quả trong môi trường lớn, đa nền tảng khi phân tích toàn bộ chính sách trở thành điểm nghẽn về hiệu suất.

Quản lý vai trò

Quản lý vai trò được sử dụng để quản lý hệ thống phân cấp vai trò RBAC (ánh xạ người dùng-vai trò) trong Casbin. Một quản lý vai trò có thể lấy dữ liệu vai trò từ các quy tắc chính sách Casbin hoặc các nguồn bên ngoài như LDAP, Okta, Auth0, Azure AD, v.v. Chúng tôi hỗ trợ các triển khai khác nhau của một quản lý vai trò. Để giữ cho nhẹ, chúng tôi không đặt mã quản lý vai trò trong thư viện chính (ngoại trừ quản lý vai trò mặc định). Danh sách đầy đủ các quản lý vai trò của Casbin được cung cấp như sau: quản lý-vai-trò.
Role manager

Ai đang sử dụng Casbin?

Hàng trăm dự án đang sử dụng Casbin, từ các công ty Fortune 500 đã thành lập đến các startup mới nổi. Nếu bạn tò mò muốn xem những gì có thể đạt được với Casbin, hãy truy cập xem các ứng dụng này!