1a87b1b1fSAnves Kumar rayankula*** Settings *** 2a87b1b1fSAnves Kumar rayankulaDocumentation Test root user expire password. 3a87b1b1fSAnves Kumar rayankula 4a87b1b1fSAnves Kumar rayankulaResource ../lib/resource.robot 5a9d9341cSshrsuman123Resource ../gui/lib/gui_resource.robot 6a87b1b1fSAnves Kumar rayankulaResource ../lib/ipmi_client.robot 7a9d9341cSshrsuman123Resource ../lib/bmc_redfish_utils.robot 8a87b1b1fSAnves Kumar rayankulaLibrary ../lib/bmc_ssh_utils.py 9a87b1b1fSAnves Kumar rayankulaLibrary SSHLibrary 10a87b1b1fSAnves Kumar rayankula 114d4ef99fSGeorge KeishingTest Setup Set Account Lockout Threshold 12e6c745acSAnves Kumar rayankula 13e18cdb56SMegha G NForce Tags BMC_Expire_Password 14e18cdb56SMegha G N 1568f985b3SAnves Kumar rayankula*** Variables *** 169f42121dSAnvesh Kumar 1768f985b3SAnves Kumar rayankula# If user re-tries more than 5 time incorrectly, the user gets locked for 5 minutes. 1868f985b3SAnves Kumar rayankula${default_lockout_duration} ${300} 19e18cdb56SMegha G N${admin_user} admin_user 20e18cdb56SMegha G N${default_adminuser_passwd} AdminUser1 21e18cdb56SMegha G N${admin_password} AdminUser2 2268f985b3SAnves Kumar rayankula 23a87b1b1fSAnves Kumar rayankula 24a87b1b1fSAnves Kumar rayankula*** Test Cases *** 25a87b1b1fSAnves Kumar rayankula 26a87b1b1fSAnves Kumar rayankulaExpire Root Password And Check IPMI Access Fails 27a87b1b1fSAnves Kumar rayankula [Documentation] Expire root user password and expect an error while access via IPMI. 28a87b1b1fSAnves Kumar rayankula [Tags] Expire_Root_Password_And_Check_IPMI_Access_Fails 2968f985b3SAnves Kumar rayankula [Teardown] Test Teardown Execution 30a87b1b1fSAnves Kumar rayankula 31e18cdb56SMegha G N Expire Password ${OPENBMC_USERNAME} 32a87b1b1fSAnves Kumar rayankula 33a87b1b1fSAnves Kumar rayankula ${status}= Run Keyword And Return Status Run External IPMI Standard Command lan print -v 34a87b1b1fSAnves Kumar rayankula Should Be Equal ${status} ${False} 35a87b1b1fSAnves Kumar rayankula 365df05f7dSAnves Kumar rayankula 375df05f7dSAnves Kumar rayankulaExpire Root Password And Check SSH Access Fails 385df05f7dSAnves Kumar rayankula [Documentation] Expire root user password and expect an error while access via SSH. 395df05f7dSAnves Kumar rayankula [Tags] Expire_Root_Password_And_Check_SSH_Access_Fails 4068f985b3SAnves Kumar rayankula [Teardown] Test Teardown Execution 415df05f7dSAnves Kumar rayankula 42e18cdb56SMegha G N Expire Password ${OPENBMC_USERNAME} 435df05f7dSAnves Kumar rayankula 445df05f7dSAnves Kumar rayankula ${status}= Run Keyword And Return Status 455df05f7dSAnves Kumar rayankula ... Open Connection And Log In ${OPENBMC_USERNAME} ${OPENBMC_PASSWORD} 465df05f7dSAnves Kumar rayankula Should Be Equal ${status} ${False} 475df05f7dSAnves Kumar rayankula 485df05f7dSAnves Kumar rayankula 4967921144SAnves Kumar rayankulaExpire And Change Root User Password And Access Via SSH 5067921144SAnves Kumar rayankula [Documentation] Expire and change root user password and access via SSH. 51b98036a9SGeorge Keishing [Tags] Expire_And_Change_Root_User_Password_And_Access_Via_SSH 5267921144SAnves Kumar rayankula [Teardown] Run Keywords Wait Until Keyword Succeeds 1 min 10 sec 5367921144SAnves Kumar rayankula ... Restore Default Password For Root User AND FFDC On Test Case Fail 5467921144SAnves Kumar rayankula 55e18cdb56SMegha G N Expire Password ${OPENBMC_USERNAME} 5667921144SAnves Kumar rayankula 579f42121dSAnvesh Kumar Redfish.Login 5867921144SAnves Kumar rayankula # Change to a valid password. 5967921144SAnves Kumar rayankula ${resp}= Redfish.Patch /redfish/v1/AccountService/Accounts/${OPENBMC_USERNAME} 6067921144SAnves Kumar rayankula ... body={'Password': '0penBmc123'} valid_status_codes=[${HTTP_OK}] 6167921144SAnves Kumar rayankula 6267921144SAnves Kumar rayankula # Verify login with the new password through SSH. 6367921144SAnves Kumar rayankula Open Connection And Log In ${OPENBMC_USERNAME} 0penBmc123 6467921144SAnves Kumar rayankula 6567921144SAnves Kumar rayankula 6667921144SAnves Kumar rayankulaExpire Root Password And Update Bad Password Length Via Redfish 6767921144SAnves Kumar rayankula [Documentation] Expire root password and update bad password via Redfish and expect an error. 6867921144SAnves Kumar rayankula [Tags] Expire_Root_Password_And_Update_Bad_Password_Length_Via_Redfish 6967921144SAnves Kumar rayankula [Teardown] Run Keywords Wait Until Keyword Succeeds 1 min 10 sec 7067921144SAnves Kumar rayankula ... Restore Default Password For Root User AND FFDC On Test Case Fail 7167921144SAnves Kumar rayankula 72e18cdb56SMegha G N Expire Password ${OPENBMC_USERNAME} 7367921144SAnves Kumar rayankula 749f42121dSAnvesh Kumar Redfish.Login 7567921144SAnves Kumar rayankula ${status}= Run Keyword And Return Status 7667921144SAnves Kumar rayankula ... Redfish.Patch /redfish/v1/AccountService/Accounts/${OPENBMC_USERNAME} 7767921144SAnves Kumar rayankula ... body={'Password': '0penBmc0penBmc0penBmc'} 7867921144SAnves Kumar rayankula Should Be Equal ${status} ${False} 79a87b1b1fSAnves Kumar rayankula 809f42121dSAnvesh Kumar 819f42121dSAnvesh KumarExpire And Change Root User Password Via Redfish And Verify 829f42121dSAnvesh Kumar [Documentation] Expire and change root user password via Redfish and verify. 839f42121dSAnvesh Kumar [Tags] Expire_And_Change_Root_User_Password_Via_Redfish_And_Verify 849f42121dSAnvesh Kumar [Teardown] Run Keywords FFDC On Test Case Fail AND 859f42121dSAnvesh Kumar ... Wait Until Keyword Succeeds 1 min 10 sec 869f42121dSAnvesh Kumar ... Restore Default Password For Root User 879f42121dSAnvesh Kumar 88e18cdb56SMegha G N Expire Password ${OPENBMC_USERNAME} 899f42121dSAnvesh Kumar 90a9d9341cSshrsuman123 Verify User Password Expired Using Redfish ${OPENBMC_USERNAME} ${OPENBMC_PASSWORD} 919f42121dSAnvesh Kumar # Change to a valid password. 929f42121dSAnvesh Kumar Redfish.Patch /redfish/v1/AccountService/Accounts/${OPENBMC_USERNAME} 939f42121dSAnvesh Kumar ... body={'Password': '0penBmc123'} 949f42121dSAnvesh Kumar Redfish.Logout 959f42121dSAnvesh Kumar 969f42121dSAnvesh Kumar # Verify login with the new password. 979f42121dSAnvesh Kumar Redfish.Login ${OPENBMC_USERNAME} 0penBmc123 989f42121dSAnvesh Kumar 999f42121dSAnvesh Kumar 100322e3aa9SAnves Kumar rayankulaVerify Error While Creating User With Expired Password 101322e3aa9SAnves Kumar rayankula [Documentation] Expire root password and expect an error while creating new user. 102322e3aa9SAnves Kumar rayankula [Tags] Verify_Error_While_Creating_User_With_Expired_Password 103322e3aa9SAnves Kumar rayankula [Teardown] Run Keywords Wait Until Keyword Succeeds 1 min 10 sec 104322e3aa9SAnves Kumar rayankula ... Restore Default Password For Root User AND FFDC On Test Case Fail 105322e3aa9SAnves Kumar rayankula 106e18cdb56SMegha G N Expire Password ${OPENBMC_USERNAME} 107322e3aa9SAnves Kumar rayankula 108a9d9341cSshrsuman123 Verify User Password Expired Using Redfish ${OPENBMC_USERNAME} ${OPENBMC_PASSWORD} 109322e3aa9SAnves Kumar rayankula Redfish.Login 110322e3aa9SAnves Kumar rayankula ${payload}= Create Dictionary 111322e3aa9SAnves Kumar rayankula ... UserName=admin_user Password=TestPwd123 RoleId=Administrator Enabled=${True} 112322e3aa9SAnves Kumar rayankula Redfish.Post /redfish/v1/AccountService/Accounts/ body=&{payload} 113322e3aa9SAnves Kumar rayankula ... valid_status_codes=[${HTTP_FORBIDDEN}] 114322e3aa9SAnves Kumar rayankula 115322e3aa9SAnves Kumar rayankula 1169233ce15SAnves Kumar rayankulaExpire And Change Root Password Via GUI 1179233ce15SAnves Kumar rayankula [Documentation] Expire and change root password via GUI. 1189233ce15SAnves Kumar rayankula [Tags] Expire_And_Change_Root_Password_Via_GUI 119a9d9341cSshrsuman123 [Setup] Launch Browser And Login GUI 120a9d9341cSshrsuman123 [Teardown] Run Keywords Logout GUI AND Close Browser 1219233ce15SAnves Kumar rayankula ... AND Restore Default Password For Root User AND FFDC On Test Case Fail 1229233ce15SAnves Kumar rayankula 123e18cdb56SMegha G N Expire Password ${OPENBMC_USERNAME} 1249233ce15SAnves Kumar rayankula 125a9d9341cSshrsuman123 Wait Until Page Contains Element ${xpath_root_button_menu} 126a9d9341cSshrsuman123 Click Element ${xpath_root_button_menu} 127a9d9341cSshrsuman123 Click Element ${xpath_profile_settings} 128a9d9341cSshrsuman123 Wait Until Page Contains Change password 129a9d9341cSshrsuman123 1309233ce15SAnves Kumar rayankula # Change valid password. 1319233ce15SAnves Kumar rayankula Input Text ${xpath_input_password} 0penBmc123 1329233ce15SAnves Kumar rayankula Input Text ${xpath_input_confirm_password} 0penBmc123 133a9d9341cSshrsuman123 Click Button ${xpath_profile_save_button} 134a9d9341cSshrsuman123 Wait Until Page Contains Successfully saved account settings. 135a9d9341cSshrsuman123 Wait Until Page Does Not Contain Successfully saved account settings. timeout=20 136a9d9341cSshrsuman123 Logout GUI 1379233ce15SAnves Kumar rayankula 1389233ce15SAnves Kumar rayankula # Verify valid password. 139a9d9341cSshrsuman123 Login GUI ${OPENBMC_USERNAME} 0penBmc123 1409233ce15SAnves Kumar rayankula Redfish.Login ${OPENBMC_USERNAME} 0penBmc123 1419233ce15SAnves Kumar rayankula 1429233ce15SAnves Kumar rayankula 14368f985b3SAnves Kumar rayankulaVerify Maximum Failed Attempts And Check Root User Account Locked 14468f985b3SAnves Kumar rayankula [Documentation] Verify maximum failed attempts and locks out root user account. 14568f985b3SAnves Kumar rayankula [Tags] Verify_Maximum_Failed_Attempts_And_Check_Root_User_Account_Locked 1464d4ef99fSGeorge Keishing [Setup] Set Account Lockout Threshold account_lockout_threshold=${5} 14768f985b3SAnves Kumar rayankula 14868f985b3SAnves Kumar rayankula # Make maximum failed login attempts. 14968f985b3SAnves Kumar rayankula Repeat Keyword ${5} times 15068f985b3SAnves Kumar rayankula ... Run Keyword And Expect Error InvalidCredentialsError* Redfish.Login root 0penBmc123 15168f985b3SAnves Kumar rayankula 15268f985b3SAnves Kumar rayankula # Verify that legitimate login fails due to lockout. 15368f985b3SAnves Kumar rayankula Run Keyword And Expect Error InvalidCredentialsError* 15468f985b3SAnves Kumar rayankula ... Redfish.Login ${OPENBMC_USERNAME} ${OPENBMC_PASSWORD} 15568f985b3SAnves Kumar rayankula 15668f985b3SAnves Kumar rayankula # Wait for lockout duration to expire and then verify that login works. 15768f985b3SAnves Kumar rayankula Sleep ${default_lockout_duration}s 15868f985b3SAnves Kumar rayankula Redfish.Login 15968f985b3SAnves Kumar rayankula Redfish.Logout 16068f985b3SAnves Kumar rayankula 161c46a8960SAnves Kumar rayankulaVerify New Password Persistency After BMC Reboot 162c46a8960SAnves Kumar rayankula [Documentation] Verify new password persistency after BMC reboot. 163c46a8960SAnves Kumar rayankula [Tags] Verify_New_Password_Persistency_After_BMC_Reboot 164e6c745acSAnves Kumar rayankula [Teardown] Test Teardown Execution 165c46a8960SAnves Kumar rayankula 166c46a8960SAnves Kumar rayankula Redfish.Login 167e6c745acSAnves Kumar rayankula 168e6c745acSAnves Kumar rayankula # Make sure the user account in question does not already exist. 169e6c745acSAnves Kumar rayankula Redfish.Delete /redfish/v1/AccountService/Accounts/admin_user 170e6c745acSAnves Kumar rayankula ... valid_status_codes=[${HTTP_OK}, ${HTTP_NOT_FOUND}] 171e6c745acSAnves Kumar rayankula 172e6c745acSAnves Kumar rayankula # Create specified user. 173e6c745acSAnves Kumar rayankula ${payload}= Create Dictionary 174e6c745acSAnves Kumar rayankula ... UserName=admin_user Password=TestPwd123 RoleId=Administrator Enabled=${True} 175e6c745acSAnves Kumar rayankula Redfish.Post /redfish/v1/AccountService/Accounts/ body=&{payload} 176e6c745acSAnves Kumar rayankula ... valid_status_codes=[${HTTP_CREATED}] 177e6c745acSAnves Kumar rayankula Redfish.Logout 178e6c745acSAnves Kumar rayankula 179e6c745acSAnves Kumar rayankula Redfish.Login admin_user TestPwd123 180e6c745acSAnves Kumar rayankula 181c46a8960SAnves Kumar rayankula # Change to a valid password. 182e6c745acSAnves Kumar rayankula Redfish.Patch /redfish/v1/AccountService/Accounts/admin_user 183c46a8960SAnves Kumar rayankula ... body={'Password': '0penBmc123'} 184c46a8960SAnves Kumar rayankula 185c46a8960SAnves Kumar rayankula # Reboot BMC and verify persistency. 186e6c745acSAnves Kumar rayankula Redfish OBMC Reboot (off) 187c46a8960SAnves Kumar rayankula 188c46a8960SAnves Kumar rayankula # verify new password 189e6c745acSAnves Kumar rayankula Redfish.Login admin_user 0penBmc123 190c46a8960SAnves Kumar rayankula 19168f985b3SAnves Kumar rayankula 192e18cdb56SMegha G NVerify Expire And Change Admin User Password Via GUI 193e18cdb56SMegha G N [Documentation] Force expire admin password and update admin password via GUI. 194e18cdb56SMegha G N [Tags] Verify_Expire_And_Change_Admin_User_Password_Via_GUI 195e18cdb56SMegha G N [Setup] Run Keywords Launch Browser And Login GUI AND 196e18cdb56SMegha G N ... Redfish Create User ${admin_user} ${default_adminuser_passwd} Administrator ${True} 197e18cdb56SMegha G N [Teardown] Run Keywords Logout GUI AND Close Browser 198e18cdb56SMegha G N 199e18cdb56SMegha G N Expire Password ${admin_user} 200e18cdb56SMegha G N 201e18cdb56SMegha G N Logout GUI 202e18cdb56SMegha G N 203e18cdb56SMegha G N # Verify that admin user should not be able to login with expired password. 204e18cdb56SMegha G N Login GUI ${admin_user} ${default_adminuser_passwd} 205e18cdb56SMegha G N 206e18cdb56SMegha G N # Verify error message to update the password. 207e18cdb56SMegha G N Wait Until Page Contains The password is expired and must be changed. timeout=10 208e18cdb56SMegha G N 209e18cdb56SMegha G N # Update a valid acceptable password. 210e18cdb56SMegha G N Input Text ${xpath_input_password} ${admin_password} 211e18cdb56SMegha G N Input Text ${xpath_input_confirm_password} ${admin_password} 212e18cdb56SMegha G N Click Button ${xpath_confirm_password_button} 213e18cdb56SMegha G N Wait Until Page Contains Overview timeout=20 214e18cdb56SMegha G N 215e18cdb56SMegha G N # Verify valid password. 216e18cdb56SMegha G N Redfish.Login ${admin_user} ${admin_password} 217e18cdb56SMegha G N 218e18cdb56SMegha G N 2192f76ae40SMegha G NExpire Admin Password And Check IPMI Access Fails 2202f76ae40SMegha G N [Documentation] Expire admin user password and expect an error while access via IPMI. 2212f76ae40SMegha G N [Tags] Expire_Admin_Password_And_Check_IPMI_Access_Fails 2222f76ae40SMegha G N [Setup] Redfish Create User ${admin_user} ${default_adminuser_passwd} Administrator ${True} 2232f76ae40SMegha G N 2242f76ae40SMegha G N Expire Password ${admin_user} 2252f76ae40SMegha G N 2262f76ae40SMegha G N ${status}= Run Keyword And Return Status Run External IPMI Standard Command lan print -v 2272f76ae40SMegha G N Should Be Equal ${status} ${False} 2282f76ae40SMegha G N 2292f76ae40SMegha G N 23080222cffSMegha G NVerify Expire Admin Password And Update Bad Password Length Via Redfish 23180222cffSMegha G N [Documentation] Expire admin password and update bad password with more than 20 characters 23280222cffSMegha G N ... via Redfish and expect an error. 23380222cffSMegha G N [Tags] Verify_Expire_Admin_Password_And_Update_Bad_Password_Length_Via_Redfish 23480222cffSMegha G N [Setup] Redfish Create User ${admin_user} ${default_adminuser_passwd} Administrator ${True} 23580222cffSMegha G N 23680222cffSMegha G N Expire Password ${admin_user} 23780222cffSMegha G N 23880222cffSMegha G N Redfish.Login 23980222cffSMegha G N 240*b1962380SMegha G N Set Password Via Redfish 0penBmc0penBmc0penBmc ${False} 24180222cffSMegha G N 24280222cffSMegha G N 243014ad018SMegha G NVerify Error While Creating User With Expired Admin Password 244014ad018SMegha G N [Documentation] Expire admin password and expect an error while creating new user. 245014ad018SMegha G N [Tags] Verify_Error_While_Creating_User_With_Expired_Admin_Password 246014ad018SMegha G N [Teardown] Restore Default Password For Admin User 247014ad018SMegha G N 248014ad018SMegha G N Expire Password ${admin_user} 249014ad018SMegha G N 250014ad018SMegha G N Verify User Password Expired Using Redfish ${admin_user} ${default_adminuser_passwd} 251014ad018SMegha G N 252014ad018SMegha G N # Create new user with expired admin password and expect an error. 253014ad018SMegha G N ${payload}= Create Dictionary 254014ad018SMegha G N ... UserName=admin_user1 Password=TestPwd123 RoleId=Administrator Enabled=${True} 255014ad018SMegha G N Redfish.Post /redfish/v1/AccountService/Accounts/ body=&{payload} 256014ad018SMegha G N ... valid_status_codes=[${HTTP_FORBIDDEN}] 257014ad018SMegha G N 258014ad018SMegha G N 259521e9e07SMegha G NVerify New Admin Password Persistency After BMC Reboot 260521e9e07SMegha G N [Documentation] Verify new admin password persistency after BMC reboot. 261521e9e07SMegha G N [Tags] Verify_New_Admin_Password_Persistency_After_BMC_Reboot 262521e9e07SMegha G N [Setup] Redfish Create User ${admin_user} ${default_adminuser_passwd} Administrator ${True} 263521e9e07SMegha G N [Teardown] Restore Default Password For Admin User 264521e9e07SMegha G N 265521e9e07SMegha G N Expire Password ${admin_user} 266521e9e07SMegha G N 267*b1962380SMegha G N Set Password Via Redfish ${admin_password} ${True} 268521e9e07SMegha G N 269521e9e07SMegha G N # Reboot BMC. 270521e9e07SMegha G N Redfish OBMC Reboot (off) stack_mode=skip 271521e9e07SMegha G N 272521e9e07SMegha G N # Verify password is persisted after bmc reboot. 273521e9e07SMegha G N Redfish.Login ${admin_user} ${admin_password} 274521e9e07SMegha G N 275521e9e07SMegha G N 276*b1962380SMegha G NExpire And Change Admin User Password Via Redfish And Verify 277*b1962380SMegha G N [Documentation] Expire and change admin user password via Redfish and verify. 278*b1962380SMegha G N [Tags] Expire_And_Change_Admin_User_Password_Via_Redfish_And_Verify 279*b1962380SMegha G N [Setup] Redfish Create User ${admin_user} ${default_adminuser_passwd} Administrator ${True} 280*b1962380SMegha G N [Teardown] Restore Default Password For Admin User 281*b1962380SMegha G N 282*b1962380SMegha G N Expire Password ${admin_user} 283*b1962380SMegha G N 284*b1962380SMegha G N Verify User Password Expired Using Redfish ${admin_user} ${default_adminuser_passwd} 285*b1962380SMegha G N 286*b1962380SMegha G N # Change to a valid password. 287*b1962380SMegha G N Set Password Via Redfish AdminUser2 ${True} 288*b1962380SMegha G N Redfish.Logout 289*b1962380SMegha G N 290*b1962380SMegha G N # Verify login with the new password. 291*b1962380SMegha G N Redfish.Login ${admin_user} AdminUser2 292*b1962380SMegha G N 293*b1962380SMegha G N 294a87b1b1fSAnves Kumar rayankula*** Keywords *** 295a87b1b1fSAnves Kumar rayankula 2964d4ef99fSGeorge KeishingSet Account Lockout Threshold 297e6c745acSAnves Kumar rayankula [Documentation] Set user account lockout threshold. 298a9d9341cSshrsuman123 [Arguments] ${account_lockout_threshold}=${0} ${account_lockout_duration}=${50} 299e6c745acSAnves Kumar rayankula 300e6c745acSAnves Kumar rayankula # Description of argument(s): 301e6c745acSAnves Kumar rayankula # account_lockout_threshold Set lockout threshold value. 302a9d9341cSshrsuman123 # account_lockout_duration Set lockout duration value. 303a87b1b1fSAnves Kumar rayankula 304a87b1b1fSAnves Kumar rayankula Redfish.login 305a9d9341cSshrsuman123 ${payload}= Create Dictionary AccountLockoutThreshold=${account_lockout_threshold} 306a9d9341cSshrsuman123 ... AccountLockoutDuration=${account_lockout_duration} 307a9d9341cSshrsuman123 Redfish.Patch /redfish/v1/AccountService/ body=&{payload} 308e6c745acSAnves Kumar rayankula gen_robot_valid.Valid Length OPENBMC_PASSWORD min_length=8 3099f42121dSAnvesh Kumar Redfish.Logout 3109f42121dSAnvesh Kumar 311a87b1b1fSAnves Kumar rayankulaRestore Default Password For Root User 312a87b1b1fSAnves Kumar rayankula [Documentation] Restore default password for root user (i.e. 0penBmc). 313a87b1b1fSAnves Kumar rayankula 314a87b1b1fSAnves Kumar rayankula # Set default password for root user. 31567921144SAnves Kumar rayankula Redfish.Patch /redfish/v1/AccountService/Accounts/${OPENBMC_USERNAME} 31667921144SAnves Kumar rayankula ... body={'Password': '${OPENBMC_PASSWORD}'} valid_status_codes=[${HTTP_OK}] 317a87b1b1fSAnves Kumar rayankula # Verify that root user is able to run Redfish command using default password. 3189f42121dSAnvesh Kumar Redfish.Logout 3199f42121dSAnvesh Kumar 3209f42121dSAnvesh Kumar 3219f42121dSAnvesh KumarTest Teardown Execution 3229f42121dSAnvesh Kumar [Documentation] Do test teardown task. 3239f42121dSAnvesh Kumar 3249f42121dSAnvesh Kumar Redfish.Login 3259f42121dSAnvesh Kumar Wait Until Keyword Succeeds 1 min 10 sec Restore Default Password For Root User 3269f42121dSAnvesh Kumar Redfish.Logout 3274d4ef99fSGeorge Keishing Set Account Lockout Threshold account_lockout_threshold=${5} 32868f985b3SAnves Kumar rayankula FFDC On Test Case Fail 329e18cdb56SMegha G N 330e18cdb56SMegha G N 331e18cdb56SMegha G NExpire Password 332e18cdb56SMegha G N [Documentation] Force expire password. 333e18cdb56SMegha G N [Arguments] ${username} 334e18cdb56SMegha G N 335e18cdb56SMegha G N # Description of argument(s): 336e18cdb56SMegha G N # username User to be created and expire. 337e18cdb56SMegha G N 338e18cdb56SMegha G N # Expire the password. 339e18cdb56SMegha G N Open Connection And Log In ${OPENBMC_USERNAME} ${OPENBMC_PASSWORD} 340e18cdb56SMegha G N 341e18cdb56SMegha G N ${output} ${stderr} ${rc}= BMC Execute Command passwd --expire ${username} 342e18cdb56SMegha G N Should Contain Any ${output} password expiry information changed password changed 343e18cdb56SMegha G N 344e18cdb56SMegha G N # Example output: 345e18cdb56SMegha G N # passwd --expire admin 346e18cdb56SMegha G N # passwd: password changed. 347e18cdb56SMegha G N 348e18cdb56SMegha G N Close All Connections 349014ad018SMegha G N 350014ad018SMegha G N 351014ad018SMegha G NRestore Default Password For Admin User 352014ad018SMegha G N [Documentation] Restore default password for admin user (i.e. AdminUser1). 353014ad018SMegha G N 354014ad018SMegha G N # Set default password for admin user. 355014ad018SMegha G N Redfish.Patch /redfish/v1/AccountService/Accounts/${admin_user} 356014ad018SMegha G N ... body={'Password': '${default_adminuser_passwd}'} valid_status_codes=[${HTTP_OK}] 357014ad018SMegha G N # Verify that admin user is able to run Redfish command using default password. 358014ad018SMegha G N Redfish.Logout 359*b1962380SMegha G N 360*b1962380SMegha G N 361*b1962380SMegha G NSet Password Via Redfish 362*b1962380SMegha G N [Documentation] Set new password via redfish. 363*b1962380SMegha G N [Arguments] ${new_password} ${expect_result} 364*b1962380SMegha G N 365*b1962380SMegha G N # Description of argument(s): 366*b1962380SMegha G N # new_password New password set. 367*b1962380SMegha G N # expect_result Expected result (eg:true or false). 368*b1962380SMegha G N 369*b1962380SMegha G N ${status}= Run Keyword And Return Status 370*b1962380SMegha G N ... Redfish.Patch /redfish/v1/AccountService/Accounts/${admin_user} 371*b1962380SMegha G N ... body={'Password': '${new_password}'} 372*b1962380SMegha G N 373*b1962380SMegha G N Should be Equal ${status} ${expect_result} 374