Skip to content

Commit d39400a

Browse files
committed
up
1 parent 13f08cf commit d39400a

File tree

1 file changed

+3
-1
lines changed

1 file changed

+3
-1
lines changed

docs/modules/ROOT/pages/access-control.adoc

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -273,7 +273,7 @@ The delayed admin actions are:
273273
* Closing or opening a target via xref:api:access.adoc#AccessManager-setTargetClosed-address-bool-[`setTargetClosed`].
274274
* Changing permissions of whether a role can call a target function with xref:api:access.adoc#AccessManager-setTargetFunctionRole-address-bytes4---uint64-[`setTargetFunctionRole`].
275275

276-
=== Querying Privileged Accounts
276+
=== Manager Enumerability
277277

278278
Similar to `AccessControl`, accounts might be granted and revoked roles dynamically in an `AccessManager`, making it challenging to determine which accounts hold a particular role at any given time. This capability is essential for proving certain properties about a system, such as verifying that an administrative role is held by a multisig or DAO, or that a certain role has been completely removed to disable associated functionality.
279279

@@ -285,6 +285,8 @@ If on-chain enumeration is required, it can be added implemented on top of the e
285285
include::api:example$AccessManagerEnumerable.sol[]
286286
```
287287

288+
NOTE: The enumerable example only enumerates members of a role and functions that each role can call. Yet, it's possible to enumerate roles active (i.e. roles granted to at least 1 member), guardians and admins.
289+
288290
This adds function that can be queried to iterate over the accounts that have been granted a role and the functions that a role is allowed to call on specific targets:
289291

290292
```javascript

0 commit comments

Comments
 (0)