Added support for retrieving info about authorizables and for adding and
removing members to a group
This commit is contained in:
@@ -1,11 +1,11 @@
|
||||
import json
|
||||
from typing import Union, List, Optional
|
||||
|
||||
import requests
|
||||
from urllib.parse import urljoin
|
||||
|
||||
from .simplenode import SimpleNode
|
||||
import requests
|
||||
|
||||
from .patchbuilder import PatchBuilder
|
||||
from .simplenode import SimpleNode
|
||||
|
||||
# TODO validation
|
||||
|
||||
@@ -41,6 +41,8 @@ WORKFLOW_LIST_MODELS = '/libs/cq/workflow/content/console/workflows.json'
|
||||
|
||||
CREATE_ASSET = '.createasset.html'
|
||||
|
||||
SECURITY_AUTHORIZABLES = "/bin/security/authorizables.json"
|
||||
|
||||
JSON_DATA_EXTENSION = '.1.json'
|
||||
|
||||
QUERY_TYPES = {
|
||||
@@ -343,3 +345,27 @@ class Connection:
|
||||
)
|
||||
resp.raise_for_status()
|
||||
return resp.json()['path']
|
||||
|
||||
def get_authorizables(self, start: int = 0, user_filter: str = "", ml: int = 0, limit: int = 500, hide_groups: bool = False, hide_users: bool = False):
|
||||
args = {
|
||||
'start': start,
|
||||
'filter': user_filter,
|
||||
'ml': ml,
|
||||
'limit': limit,
|
||||
'hideGroups': json.dumps(hide_groups),
|
||||
'hideUsers': json.dumps(hide_users),
|
||||
}
|
||||
url = self._host + SECURITY_AUTHORIZABLES
|
||||
resp = self._session.get(url, params=args)
|
||||
|
||||
return resp.json()['authorizables']
|
||||
|
||||
def add_remove_group(self, path: str, group_name: str):
|
||||
args = {
|
||||
'memberAction': (None, 'memberOf'),
|
||||
'memberEntry': (None, group_name),
|
||||
}
|
||||
url = self._host + path
|
||||
resp = self._session.post(url, files=args)
|
||||
print(resp.text)
|
||||
return resp.ok
|
||||
|
||||
Reference in New Issue
Block a user