diff --git a/keepercli-package/src/keepercli/commands/enterprise_role.py b/keepercli-package/src/keepercli/commands/enterprise_role.py index b366c9f..7a79529 100644 --- a/keepercli-package/src/keepercli/commands/enterprise_role.py +++ b/keepercli-package/src/keepercli/commands/enterprise_role.py @@ -352,7 +352,7 @@ def execute(self, context: KeeperParams, **kwargs) -> None: parent_node = enterprise_utils.NodeUtils.resolve_single_node(context.enterprise_data, kwargs.get('parent')) parent_id = parent_node.node_id else: - parent_id = context.enterprise_data.root_node.node_id + parent_id = role_list[0].node_id new_user_inherit: Optional[bool] = None visible_below: Optional[bool] = None diff --git a/keepercli-package/src/keepercli/commands/enterprise_user.py b/keepercli-package/src/keepercli/commands/enterprise_user.py index b6a2044..1c77a37 100644 --- a/keepercli-package/src/keepercli/commands/enterprise_user.py +++ b/keepercli-package/src/keepercli/commands/enterprise_user.py @@ -540,12 +540,10 @@ def execute(self, context: KeeperParams, **kwargs) -> None: if not emails: raise base.CommandError('No email(s) provided') - parent_id: Optional[int] + parent_id: Optional[int] = None if kwargs.get('parent'): parent_node = enterprise_utils.NodeUtils.resolve_single_node(context.enterprise_data, kwargs.get('parent')) parent_id = parent_node.node_id - else: - parent_id = context.enterprise_data.root_node.node_id users = enterprise_utils.UserUtils.resolve_existing_users(context.enterprise_data, emails) if not users: @@ -603,7 +601,7 @@ def execute(self, context: KeeperParams, **kwargs) -> None: if parent_id or full_name or job_title: users_to_update = [enterprise_management.UserEdit( - enterprise_user_id=x.enterprise_user_id, node_id=parent_id, full_name=full_name, job_title=job_title) + enterprise_user_id=x.enterprise_user_id, node_id=parent_id or x.node_id, full_name=full_name, job_title=job_title) for x in users] batch.modify_users(to_update=users_to_update) diff --git a/keepercli-package/src/keepercli/commands/enterprise_utils.py b/keepercli-package/src/keepercli/commands/enterprise_utils.py index 41c6df9..81a2147 100644 --- a/keepercli-package/src/keepercli/commands/enterprise_utils.py +++ b/keepercli-package/src/keepercli/commands/enterprise_utils.py @@ -203,7 +203,7 @@ def enforcement_value_from_file(filepath: str) -> str: def parse_enforcements(enforcement_names: Any) -> Tuple[Dict[str, Any], List[str]]: enforcements: Dict[str, Any] = {} errors: List[str] = [] - if isinstance(enforcements, str): + if isinstance(enforcement_names, str): enforcement_names = [enforcement_names] file_prefix = '$FILE=' for enf in enforcement_names: @@ -232,6 +232,7 @@ def parse_enforcements(enforcement_names: Any) -> Tuple[Dict[str, Any], List[str else: errors.append(f'Enforcement {key} is skipped. Expected format: KEY:$FILE=') continue + enforcements[key] = enforcement_value return enforcements, errors