projects
/
osm
/
osmclient.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Feature 10914: Enforce Password change on First login
[osm/osmclient.git]
/
osmclient
/
scripts
/
osm.py
diff --git
a/osmclient/scripts/osm.py
b/osmclient/scripts/osm.py
index
0e63958
..
44bc7be
100755
(executable)
--- a/
osmclient/scripts/osm.py
+++ b/
osmclient/scripts/osm.py
@@
-4844,6
+4844,16
@@
def user_create(ctx, username, password, projects, project_role_mappings, domain
multiple=True,
help="remove role(s) in a project. Can be used several times: 'project,role1[,role2,...]'",
)
multiple=True,
help="remove role(s) in a project. Can be used several times: 'project,role1[,role2,...]'",
)
+@click.option(
+ "--change_password",
+ "change_password",
+ help="user's current password"
+)
+@click.option(
+ "--new_password",
+ "new_password",
+ help="user's new password to update in expiry condition"
+)
@click.pass_context
def user_update(
ctx,
@click.pass_context
def user_update(
ctx,
@@
-4854,6
+4864,8
@@
def user_update(
remove_project,
add_project_role,
remove_project_role,
remove_project,
add_project_role,
remove_project_role,
+ change_password,
+ new_password,
):
"""Update a user information
):
"""Update a user information
@@
-4865,6
+4877,8
@@
def user_update(
REMOVE_PROJECT: deleting mappings for project/role(s)
ADD_PROJECT_ROLE: adding mappings for project/role(s)
REMOVE_PROJECT_ROLE: removing mappings for project/role(s)
REMOVE_PROJECT: deleting mappings for project/role(s)
ADD_PROJECT_ROLE: adding mappings for project/role(s)
REMOVE_PROJECT_ROLE: removing mappings for project/role(s)
+ CHANGE_PASSWORD: user's current password to change
+ NEW_PASSWORD: user's new password to update in expiry condition
"""
logger.debug("")
user = {}
"""
logger.debug("")
user = {}
@@
-4874,10
+4888,15
@@
def user_update(
user["remove-project"] = remove_project
user["add-project-role"] = add_project_role
user["remove-project-role"] = remove_project_role
user["remove-project"] = remove_project
user["add-project-role"] = add_project_role
user["remove-project-role"] = remove_project_role
+ user["change_password"] = change_password
+ user["new_password"] = new_password
# try:
check_client_version(ctx.obj, ctx.command.name)
# try:
check_client_version(ctx.obj, ctx.command.name)
- ctx.obj.user.update(username, user)
+ if not user.get("change_password"):
+ ctx.obj.user.update(username, user)
+ else:
+ ctx.obj.user.update(username, user, pwd_change=True)
# except ClientException as e:
# print(str(e))
# exit(1)
# except ClientException as e:
# print(str(e))
# exit(1)