This is an automated email from the ASF dual-hosted git repository.

hsluoyz pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/casbin-website.git


The following commit(s) were added to refs/heads/master by this push:
     new 6313f42e5 docs: sharpen the access control model pages for search
6313f42e5 is described below

commit 6313f42e515fd8bbafd8401c3c72e790a98d167e
Author: Yang Luo <[email protected]>
AuthorDate: Tue Nov 3 17:30:47 2026 +0800

    docs: sharpen the access control model pages for search
---
 docs/ABAC.mdx                |  7 +++++++
 docs/AccessControlModels.mdx |  2 +-
 docs/Biba.mdx                | 18 ++++++++++++++++--
 docs/LBAC.mdx                | 18 ++++++++++++++++--
 docs/RBAC.mdx                |  7 +++++++
 docs/ReBAC.mdx               |  7 +++++++
 docs/SuperAdmin.mdx          | 22 +++++++++++++++++++---
 docs/UCON.mdx                | 20 +++++++++++++++++---
 8 files changed, 90 insertions(+), 11 deletions(-)

diff --git a/docs/ABAC.mdx b/docs/ABAC.mdx
index 30af2f228..9e22685aa 100644
--- a/docs/ABAC.mdx
+++ b/docs/ABAC.mdx
@@ -185,3 +185,10 @@ p, r.sub.Age < 60, /data2, write
 **Is ABAC the same as XACML?** No. XACML is an OASIS standard language for 
writing ABAC policies. Casbin does not use XACML; rules are written in the 
model's matcher or stored as policy rows.
 
 **Can I try ABAC without writing code?** Yes. Pick an ABAC example in the 
[online editor](/docs/online-editor) and edit the matcher and the request.
+
+## Related models
+
+- [RBAC](/docs/rbac)
+- [ReBAC](/docs/rebac)
+- [Policy-based access control (PBAC)](/docs/pbac)
+- [Access control models compared](/docs/access-control-models)
diff --git a/docs/AccessControlModels.mdx b/docs/AccessControlModels.mdx
index dc3adbc1d..27de91b82 100644
--- a/docs/AccessControlModels.mdx
+++ b/docs/AccessControlModels.mdx
@@ -225,4 +225,4 @@ For `design.md` (type `doc`, owner alice), alice may edit 
because she is an auth
 
 **Which libraries and platforms support both RBAC and ABAC?** Casbin supports 
both, and their combination, in one model for Go, Java, Node.js, Python, .NET, 
Rust and other languages. Policy engines such as [OPA](/docs/casbin-vs-opa) and 
[Cedar](/docs/casbin-vs-cedar) can express both as well, while Zanzibar-style 
services such as [OpenFGA](/docs/casbin-vs-openfga) are built around ReBAC. 
[Casbin vs. Alternatives](/docs/comparison) compares them.
 
-**Does Casbin support all of these?** Yes, along with others such as 
[RBAC96](/docs/rbac-96), [OrBAC](/docs/orbac), [UCON](/docs/ucon), and priority 
and deny-override policies. See [Supported models](/docs/supported-models), and 
try any of them in the [online editor](/docs/online-editor).
+**Does Casbin support all of these?** Yes, along with others such as 
[RBAC96](/docs/rbac-96), [OrBAC](/docs/orbac), [UCON](/docs/ucon), 
[LBAC](/docs/lbac), the [Biba](/docs/biba) integrity model, and priority and 
deny-override policies. See [Supported models](/docs/supported-models), and try 
any of them in the [online editor](/docs/online-editor). [Super 
administrators](/docs/superadmin) are handled with one extra matcher condition 
rather than a separate model.
diff --git a/docs/Biba.mdx b/docs/Biba.mdx
index 808c4c3fa..67ee02e51 100644
--- a/docs/Biba.mdx
+++ b/docs/Biba.mdx
@@ -1,12 +1,12 @@
 ---
 id: biba
-title: Biba
+title: "Biba Integrity Model: No Read Down, No Write Up"
 description: "Implement the Biba integrity model in Casbin - integrity levels 
for subjects and objects, with no read down and no write up rules."
 keywords: [biba, integrity model, security model, data integrity]
 authors: [nodece]
 ---
 
-## Overview
+## What is the Biba model?
 
 The **Biba** model (1975) enforces **integrity**: subjects and objects have 
integrity levels. Rules: **no read down** (don’t read lower-integrity data), 
**no write up** (don’t write to higher-integrity data). So high-integrity data 
cannot be corrupted by lower-integrity sources.
 
@@ -97,3 +97,17 @@ Common Biba model applications:
 | Read Rule     | No Read Up            | No Read Down          |
 | Write Rule    | No Write Down         | No Write Up           |
 | Phrase        | "Read down, write up" | "Read up, write down" |
+
+## FAQ
+
+**What does "no read down, no write up" mean?** A subject may not read data 
with a lower integrity level than its own (no read down), and may not write to 
data with a higher integrity level (no write up). Both rules keep low-integrity 
data from contaminating high-integrity data.
+
+**What is the difference between Biba and Bell-LaPadula?** Bell-LaPadula 
protects confidentiality with "no read up, no write down"; Biba protects 
integrity with the mirrored rules. The table above compares them.
+
+**Does Casbin ship a Biba model?** Casbin does not have a built-in model named 
Biba. You write it as a matcher over integrity levels, as on this page; the 
same approach works in any Casbin port.
+
+## Related models
+
+- [LBAC (confidentiality and integrity in one lattice)](/docs/lbac)
+- [Bell-LaPadula](/docs/blp)
+- [MAC overview](/docs/mac-overview)
diff --git a/docs/LBAC.mdx b/docs/LBAC.mdx
index a75ea8127..eec9bb28d 100644
--- a/docs/LBAC.mdx
+++ b/docs/LBAC.mdx
@@ -1,7 +1,7 @@
 ---
 id: lbac
-title: LBAC
-description: "Implement lattice-based access control (LBAC) in Casbin, 
enforcing confidentiality and integrity levels together in a single model."
+title: "What is LBAC? Lattice-Based Access Control in Casbin"
+description: "What lattice-based access control (LBAC) is, how it combines 
confidentiality and integrity levels, and how to enforce both in one Casbin 
model."
 keywords: [lbac, lattice-based access control, security model, 
confidentiality, integrity]
 authors: [nodece]
 ---
@@ -92,3 +92,17 @@ This LBAC implementation is well-suited for:
 - System administrators assign security levels
 - Access decisions consider both confidentiality and integrity levels
 - The model prevents information leakage and data corruption
+
+## FAQ
+
+**What is the difference between LBAC and MAC?** MAC is the category: access 
is decided by system-assigned labels rather than by the resource owner. LBAC is 
one way to implement MAC, using a lattice of security levels. The model on this 
page puts confidentiality and integrity levels in the same lattice.
+
+**How is LBAC different from RBAC?** RBAC grants permissions to roles that 
people hold; LBAC grants nothing to roles. Every request carries the subject's 
and object's levels, and the matcher compares them, so there is no per-user 
policy to maintain.
+
+**Can LBAC be combined with RBAC?** Yes. Keep the role checks of 
[RBAC](/docs/rbac) and add the level comparisons to the same matcher; the 
[access control models](/docs/access-control-models) page shows the same idea 
for RBAC and ABAC.
+
+## Related models
+
+- [MAC overview](/docs/mac-overview)
+- [Bell-LaPadula (confidentiality)](/docs/blp)
+- [Biba (integrity)](/docs/biba)
diff --git a/docs/RBAC.mdx b/docs/RBAC.mdx
index 85138107e..62fcab6c6 100644
--- a/docs/RBAC.mdx
+++ b/docs/RBAC.mdx
@@ -182,3 +182,10 @@ See [RBAC with pattern](/docs/rbac-with-pattern).
 ## Role manager
 
 See [Role managers](/docs/role-managers) for custom role management.
+
+## Related models
+
+- [ABAC](/docs/abac)
+- [ReBAC](/docs/rebac)
+- [Super administrator](/docs/superadmin)
+- [Access control models compared](/docs/access-control-models)
diff --git a/docs/ReBAC.mdx b/docs/ReBAC.mdx
index 6ccd8b77e..31dda32a9 100644
--- a/docs/ReBAC.mdx
+++ b/docs/ReBAC.mdx
@@ -77,3 +77,10 @@ So: the user must have the right **role on the resource** 
and the resource must
 **Do I need a Zanzibar-style service to use ReBAC?** No. If relationships fit 
in your application's database and checks happen inside your service, a library 
such as Casbin is enough. A dedicated service makes sense when many services 
must share one relationship store; see [Casbin vs. 
OpenFGA](/docs/casbin-vs-openfga).
 
 **Can I try this model without writing code?** Yes. Choose the ReBAC example 
in the [online editor](/docs/online-editor).
+
+## Related models
+
+- [RBAC](/docs/rbac)
+- [ABAC](/docs/abac)
+- [Access control models compared](/docs/access-control-models)
+- [Casbin vs. OpenFGA](/docs/casbin-vs-openfga)
diff --git a/docs/SuperAdmin.mdx b/docs/SuperAdmin.mdx
index 18dcf1b12..53d3270c8 100644
--- a/docs/SuperAdmin.mdx
+++ b/docs/SuperAdmin.mdx
@@ -1,11 +1,13 @@
 ---
 id: superadmin
-title: Super Administrator
-description: The Super Admin is the administrator of the entire system. It can 
be used in models such as RBAC, ABAC, and RBAC with domains. 
-keywords: [Super Admin]
+title: "Super Administrator in Casbin: Bypass Policy Checks"
+description: "What a super administrator (root) is in Casbin, how to add one 
to the matcher, and how the same pattern works with RBAC, ABAC and RBAC with 
domains."
+keywords: [Super Admin, super administrator, root user, bypass policy]
 authors: [ErikQQY]
 ---
 
+## What is a Super Admin?
+
 A **Super Admin** (e.g. `root`) is a subject that bypasses normal policy and 
always gets allow. You implement it in the **matcher** by adding a condition 
like `r.sub == "root"`. Example:
 
 ```ini
@@ -23,3 +25,17 @@ m = r.sub == p.sub && r.obj == p.obj && r.act == p.act || 
r.sub == "root"
 ```
 
 The matcher allows the request if either (1) it matches a policy rule, or (2) 
`r.sub == "root"`. So `root` is never denied. The same pattern works in RBAC, 
ABAC, or RBAC-with-domains: add `|| r.sub == "root"` (or your superuser name) 
to the matcher.
+
+## FAQ
+
+**How do I make a super admin in Casbin?** Add `r.sub == "root"` (or your own 
user name) as an alternative in the matcher, as above. The check runs before 
the policy lookup, so the super admin needs no policy rows.
+
+**Is a super admin the same as an admin role?** No. An admin role is a normal 
role with permissions and can be audited or removed like any other role. A 
super admin bypasses the policy entirely, so keep it to one account and protect 
it with MFA.
+
+**Does this work with RBAC with domains?** Yes. Append the same condition to 
the matcher; it is independent of the role or domain check.
+
+## Related models
+
+- [RBAC](/docs/rbac)
+- [ABAC](/docs/abac)
+- [Access control models compared](/docs/access-control-models)
diff --git a/docs/UCON.mdx b/docs/UCON.mdx
index 83a2f76ba..1430a00f5 100644
--- a/docs/UCON.mdx
+++ b/docs/UCON.mdx
@@ -1,13 +1,13 @@
 ---
 id: ucon
-title: Usage Control (UCON)
-description: "Usage control (UCON) with Casbin - authorizations, obligations 
and conditions that are checked continuously during use, with mutable 
attributes."
+title: "What is Usage Control (UCON)? Continuous Authorization"
+description: "What usage control (UCON) is: authorizations, obligations and 
conditions checked continuously during use, with mutable attributes, and how to 
implement it with Casbin."
 keywords:
   [ucon, usage control, access control, authorization, obligations, conditions]
 authors: [nodece]
 ---
 
-## Overview
+## What is UCON?
 
 **UCON (Usage Control)** extends access control with **authorizations (A)**, 
**obligations (B)**, and **conditions (C)**. It supports **continuous** 
enforcement during use (not only at access time) and **mutable** attributes. 
Casbin does not implement UCON in the core; use the 
[casbin-ucon](https://github.com/apache/casbin-ucon) extension for 
session-based usage control.
 
@@ -166,3 +166,17 @@ func main() {
 ## References
 
 For complete API documentation, detailed usage, and latest updates about 
casbin-ucon, refer to [casbin-ucon](https://github.com/apache/casbin-ucon).
+
+## FAQ
+
+**Does Casbin support UCON in the core?** No. The core library makes a 
decision when `Enforce()` is called. UCON needs continuous checks and mutable 
attributes, so it is provided by the 
[casbin-ucon](https://github.com/apache/casbin-ucon) extension, which wraps an 
enforcer with sessions, conditions and obligations.
+
+**How is UCON different from RBAC?** RBAC decides once, before access, from 
roles. UCON can also decide during use and after access, and its attributes can 
change while a session is active, so a permission can be revoked without 
waiting for the next login.
+
+**When should I use UCON?** When access depends on time, usage count, location 
or other changing context, or when the policy must react while a session is 
still running. If a role check at request time is enough, use 
[RBAC](/docs/rbac).
+
+## Related models
+
+- [RBAC](/docs/rbac)
+- [ABAC](/docs/abac)
+- [Access control models compared](/docs/access-control-models)


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to