Skip to content

Commit a7f3005

Browse files
Add Permissions.all to enum (#682)
1 parent d4874d2 commit a7f3005

File tree

2 files changed

+4
-3
lines changed

2 files changed

+4
-3
lines changed

aiohttp_admin/security.py

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@ class Permissions(str, Enum):
1616
edit = "admin.edit"
1717
add = "admin.add"
1818
delete = "admin.delete"
19+
all = "admin.*"
1920

2021

2122
def has_permission(p: Union[str, Enum], permissions: Mapping[str, Mapping[str, Sequence[object]]],
@@ -78,7 +79,7 @@ async def permits(self, identity: Optional[str], permission: Union[str, Enum],
7879
permissions: Optional[Collection[str]] = request.get("aiohttpadmin_permissions")
7980
if permissions is None:
8081
if self._identity_callback is None:
81-
permissions = tuple(Permissions)
82+
permissions = (Permissions.all,)
8283
else:
8384
user = await self._identity_callback(identity)
8485
permissions = user["permissions"]
@@ -142,7 +143,7 @@ async def user_identity_dict(self, request: web.Request, identity: str) -> Ident
142143
All details (except auth) can be specified using the identity callback.
143144
"""
144145
if self._identity_callback is None:
145-
user_details: UserDetails = {"permissions": tuple(Permissions)}
146+
user_details: UserDetails = {"permissions": (Permissions.all,)}
146147
else:
147148
user_details = await self._identity_callback(identity)
148149
if "auth" in user_details:

examples/permissions.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -77,7 +77,7 @@ async def create_app() -> web.Application:
7777

7878
# Create users with various permissions.
7979
async with session.begin() as sess:
80-
sess.add(User(username="admin", permissions=json.dumps(tuple(Permissions))))
80+
sess.add(User(username="admin", permissions=json.dumps((Permissions.all,))))
8181
sess.add(User(username="view", permissions=json.dumps((Permissions.view,))))
8282
sess.add(User(username="add", permissions=json.dumps(
8383
(Permissions.view, Permissions.add,))))

0 commit comments

Comments
 (0)