Skip to content

Commit 577b8e1

Browse files
committed
fix(filestore): use correct scope at new user insert for auto create user dir
1 parent 10058e7 commit 577b8e1

File tree

1 file changed

+6
-4
lines changed

1 file changed

+6
-4
lines changed

users/filestore.py

+6-4
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,7 @@ def use_filestore_auth(user: User):
3939
def get_filestore_token(user_login, host, verify):
4040
try:
4141
r_userlogin = requests.get(f"https://{host}/storemng/api/login",
42-
data=json.dumps(user_login), verify=verify)
42+
data=json.dumps(user_login), verify=verify)
4343
r_userlogin.raise_for_status()
4444
except (requests.exceptions.ConnectionError, requests.exceptions.HTTPError) as err:
4545
print("{0}: ".format(err))
@@ -75,9 +75,11 @@ def add_filestore_auth(user: User):
7575
fs_user["data"]["password"] = user.password
7676
fs_user["data"]["lockPassword"] = True
7777
fs_user["data"]["perm"]["admin"] = user.is_superuser
78-
# NOTE: ["data"]["scope"] must be set in PUT, not POST /api/users for staff users.
79-
# POST /api/users will automatically overwrite scope with user-only scope when settings.createUserDir=true.
80-
# A call in views.storelogin() will do this, using set_filestore_staff() making sure staff users get the root scope.
78+
if user.is_staff: # admin and staff get root scope
79+
fs_user["data"]["scope"] = "."
80+
else:
81+
# setting scope in users POST will generate user dir
82+
fs_user["data"]["scope"] = get_user_scope(user)
8183

8284
# add new user to filestore db
8385
try:

0 commit comments

Comments
 (0)