diff --git a/lib/certificate_utils.robot b/lib/certificate_utils.robot
index 54fb9db..6da2fb3 100755
--- a/lib/certificate_utils.robot
+++ b/lib/certificate_utils.robot
@@ -24,6 +24,7 @@
     Initialize OpenBMC  quiet=${quiet}
 
     ${headers}=  Create Dictionary  Content-Type=application/octet-stream
+    ...  X-Auth-Token=${XAUTH_TOKEN}
     Set To Dictionary  ${kwargs}  headers  ${headers}
 
     Run Keyword If  '${quiet}' == '${0}'  Log Request  method=Put
diff --git a/lib/rest_client.robot b/lib/rest_client.robot
index 3969ea7..59df8ec 100644
--- a/lib/rest_client.robot
+++ b/lib/rest_client.robot
@@ -7,12 +7,15 @@
 Library           disable_warning_urllib.py
 Library           utils.py
 Library           gen_misc.py
+Library           var_funcs.py
 Resource          rest_response_code.robot
 
 *** Variables ***
 # Assign default value to QUIET for programs which may not define it.
 ${QUIET}  ${0}
 
+${XAUTH_TOKEN}  ${EMPTY}
+
 *** Keywords ***
 OpenBMC Get Request
     [Documentation]  Do REST GET request and return the result.
@@ -37,8 +40,12 @@
     #          set kwargs as follows:
     #          ${kwargs}=  Create Dictionary  allow_redirect=${True}.
 
-    Initialize OpenBMC    ${timeout}  quiet=${quiet}
+    Initialize OpenBMC  ${timeout}  quiet=${quiet}
+
     ${base_uri}=    Catenate    SEPARATOR=    ${DBUS_PREFIX}    ${uri}
+    ${headers}=  Create Dictionary  Content-Type=application/octet-stream
+    ...  X-Auth-Token=${XAUTH_TOKEN}  Accept=application/octet-stream
+    Set To Dictionary  ${kwargs}  headers  ${headers}
     Run Keyword If  '${quiet}' == '${0}'  Log Request  method=Get
     ...  base_uri=${base_uri}  args=&{kwargs}
     ${ret}=  Get Request  openbmc  ${base_uri}  &{kwargs}  timeout=${timeout}
@@ -63,7 +70,8 @@
 
     Initialize OpenBMC    ${timeout}  quiet=${quiet}
     ${base_uri}=    Catenate    SEPARATOR=    ${DBUS_PREFIX}    ${uri}
-    ${headers}=     Create Dictionary   Content-Type=application/json
+    ${headers}=  Create Dictionary   Content-Type=application/json
+    ...  X-Auth-Token=${XAUTH_TOKEN}
     set to dictionary   ${kwargs}       headers     ${headers}
     Run Keyword If  '${quiet}' == '${0}'  Log Request  method=Post
     ...  base_uri=${base_uri}  args=&{kwargs}
@@ -88,6 +96,7 @@
     Initialize OpenBMC    ${timeout}
     ${base_uri}=    Catenate    SEPARATOR=    ${DBUS_PREFIX}    ${uri}
     ${headers}=     Create Dictionary   Content-Type=application/json
+    ...  X-Auth-Token=${XAUTH_TOKEN}
     set to dictionary   ${kwargs}       headers     ${headers}
     Log Request    method=Put    base_uri=${base_uri}    args=&{kwargs}
     ${ret}=  Put Request  openbmc  ${base_uri}  &{kwargs}  timeout=${timeout}
@@ -110,7 +119,10 @@
 
     Initialize OpenBMC    ${timeout}
     ${base_uri}=    Catenate    SEPARATOR=    ${DBUS_PREFIX}    ${uri}
-    Log Request    method=Delete    base_uri=${base_uri}    args=&{kwargs}
+    ${headers}=  Create Dictionary   Content-Type=application/json
+    ...  X-Auth-Token=${XAUTH_TOKEN}
+    Set To Dictionary   ${kwargs}  headers   ${headers}
+    Log Request  method=Delete  base_uri=${base_uri}  args=&{kwargs}
     ${ret}=  Delete Request  openbmc  ${base_uri}  &{kwargs}  timeout=${timeout}
     Log Response    ${ret}
     Delete All Sessions
@@ -119,32 +131,71 @@
 Initialize OpenBMC
     [Documentation]  Do a REST login connection within specified time.
     [Arguments]  ${timeout}=20  ${quiet}=${1}
-    ...  ${REST_USERNAME}=${REST_USERNAME}
-    ...  ${REST_PASSWORD}=${REST_PASSWORD}
+    ...  ${rest_username}=${REST_USERNAME}
+    ...  ${rest_password}=${REST_PASSWORD}
 
     # Description of argument(s):
-    # timeout  REST login attempt time out.
-    # quiet    Suppress console log if set.
+    # timeout        REST login attempt time out.
+    # quiet          Suppress console log if set.
+    # rest_username  The REST username.
+    # rest_password  The REST password.
+
+    ${bmcweb_status}=  Run Keyword And Return Status  BMC Web Login Request
+    ...  ${timeout}  ${rest_username}  ${rest_password}
+
+    Return From Keyword If  ${bmcweb_status} == ${True}
 
     # TODO : Task to revert this changes openbmc/openbmc-test-automation#532
     # This will retry at 20 second interval.
     Wait Until Keyword Succeeds  40 sec  20 sec
     ...  Post Login Request  ${timeout}  ${quiet}
-    ...  ${REST_USERNAME}  ${REST_PASSWORD}
+    ...  ${rest_username}  ${rest_password}
+
+
+BMC Web Login Request
+    [Documentation]  Do BMC web-based login.
+    [Arguments]  ${timeout}=20  ${rest_username}=${REST_USERNAME}
+    ...  ${rest_password}=${REST_PASSWORD}
+
+    # Description of argument(s):
+    # timeout        REST login attempt time out.
+    # rest_username  The REST username.
+    # rest_password  The REST password.
+
+    Create Session  openbmc  ${AUTH_URI}  timeout=${timeout}
+
+    ${headers}=  Create Dictionary  Content-Type=application/json
+    @{credentials}=  Create List  ${rest_username}  ${rest_password}
+    ${data}=  Create Dictionary  data=@{credentials}
+    ${resp}=  Post Request  openbmc  /login  data=${data}  headers=${headers}
+    Should Be Equal As Strings  ${resp.status_code}  ${HTTP_OK}
+
+    ${processed_token_data}=
+    ...  Evaluate  re.split(r'[;,]', '${resp.headers["Set-Cookie"]}')  modules=re
+    ${result}=  Key Value List To Dict  ${processed_token_data}  delim==
+
+    # Example result data:
+    # 'XSRF-TOKEN=hQuOyDJFEIbrN4aOg2CT; Secure,
+    # SESSION=c4wloTiETumSxPI9nLeg; Secure; HttpOnly'
+    Set Global Variable  ${XAUTH_TOKEN}  ${result['session']}
+
 
 Post Login Request
     [Documentation]  Do REST login request.
     [Arguments]  ${timeout}=20  ${quiet}=${1}
-    ...  ${REST_USERNAME}=${REST_USERNAME}
-    ...  ${REST_PASSWORD}=${REST_PASSWORD}
+    ...  ${rest_username}=${REST_USERNAME}
+    ...  ${rest_password}=${REST_PASSWORD}
 
     # Description of argument(s):
-    # timeout  REST login attempt time out.
-    # quiet    Suppress console log if set.
+    # timeout        REST login attempt time out.
+    # quiet          Suppress console log if set.
+    # rest_username  The REST username.
+    # rest_password  The REST password.
 
     Create Session  openbmc  ${AUTH_URI}  timeout=${timeout}  max_retries=3
+
     ${headers}=  Create Dictionary  Content-Type=application/json
-    @{credentials}=  Create List  ${REST_USERNAME}  ${REST_PASSWORD}
+    @{credentials}=  Create List  ${rest_username}  ${rest_password}
     ${data}=  create dictionary   data=@{credentials}
     ${status}  ${resp}=  Run Keyword And Ignore Error  Post Request  openbmc
     ...  /login  data=${data}  headers=${headers}
@@ -152,10 +203,12 @@
     Should Be Equal  ${status}  PASS  msg=${resp}
     Should Be Equal As Strings  ${resp.status_code}  ${HTTP_OK}
 
+
 Log Out OpenBMC
     [Documentation]  Log out of the openbmc REST session.
 
     ${headers}=  Create Dictionary  Content-Type=application/json
+    ...  X-Auth-Token=${XAUTH_TOKEN}
     ${data}=  Create dictionary  data=@{EMPTY}
 
     # If there is no active sesion it will throw the following exception
@@ -300,7 +353,7 @@
     Initialize OpenBMC  ${timeout}  quiet=${quiet}
     ${base_uri}=  Catenate  SEPARATOR=  ${DBUS_PREFIX}  ${uri}
     ${headers}=  Create Dictionary  Content-Type=application/octet-stream
-    ...  Accept=application/octet-stream
+    ...  X-Auth-Token=${XAUTH_TOKEN}  Accept=application/octet-stream
     Set To Dictionary  ${kwargs}  headers  ${headers}
     Run Keyword If  '${quiet}' == '${0}'  Log Request  method=Post
     ...  base_uri=${base_uri}  args=&{kwargs}
diff --git a/lib/utils.robot b/lib/utils.robot
index 86101b5..ad413fa 100755
--- a/lib/utils.robot
+++ b/lib/utils.robot
@@ -98,7 +98,8 @@
     Run Keyword If  '${status}' == 'PASS'
     ...  Write Attribute  ${HOST_WATCHDOG_URI}  ExpireAction  data=${data}
 
-    ${data}=  Create Dictionary  data=${milliseconds}
+    ${int_milliseconds}=  Convert To Integer  ${milliseconds}
+    ${data}=  Create Dictionary  data=${int_milliseconds}
     Write Attribute  ${HOST_WATCHDOG_URI}  Interval  data=${data}
 
     ${data}=  Create Dictionary  data=${True}
@@ -567,7 +568,7 @@
     @{password}=  Create List  ${openbmc_password}
     ${data}=  Create Dictionary  data=@{password}
 
-    ${headers}=  Create Dictionary  Content-Type=application/json
+    ${headers}=  Create Dictionary  Content-Type=application/json  X-Auth-Token=${XAUTH_TOKEN}
     ${resp}=  Post Request  openbmc  ${BMC_USER_URI}root/action/SetPassword
     ...  data=${data}  headers=${headers}
     Should Be Equal As Strings  ${resp.status_code}  ${HTTP_OK}
