New test cases added and code fixes
New Test cases:
1. Send CSR request from different user roles
2. Send CSR request when VMI is down
Code fixes:
1. Code to handle CSR request when VMI is up and when VMI is down
2. Generate CSR with right csr file
Signed-off-by: Prashanth Katti <prkatti1@in.ibm.com>
Change-Id: Icd6127f28a4612aa459c4841010eb63bf5d4f6b6
diff --git a/openpower/ext_interfaces/test_vmicert_management.robot b/openpower/ext_interfaces/test_vmicert_management.robot
index a939438..921d579 100644
--- a/openpower/ext_interfaces/test_vmicert_management.robot
+++ b/openpower/ext_interfaces/test_vmicert_management.robot
@@ -18,7 +18,10 @@
# users User Name password
@{ADMIN} admin_user TestPwd123
@{OPERATOR} operator_user TestPwd123
-&{USERS} Administrator=${ADMIN} Operator=${OPERATOR}
+@{ReadOnly} readonly_user TestPwd123
+@{NoAccess} noaccess_user TestPwd123
+&{USERS} Administrator=${ADMIN} Operator=${OPERATOR} ReadOnly=${ReadOnly}
+... NoAccess=${NoAccess}
${VMI_BASE_URI} /ibm/v1/
${CSR_FILE} csr_server.csr
${CSR_KEY} csr_server.key
@@ -28,22 +31,60 @@
Get CSR Request Signed By VMI And Verify
[Documentation] Get CSR request signed by VMI using different user roles and verify.
[Tags] Get_CSR_Request_Signed_By_VMI_And_Verify
+ [Setup] Redfish Power On
[Template] Get Certificate Signed By VMI
# username password force_create valid_csr valid_status_code
${OPENBMC_USERNAME} ${OPENBMC_PASSWORD} ${True} ${True} ${HTTP_OK}
+
+ # Send CSR request from operator user.
operator_user TestPwd123 ${False} ${True} ${HTTP_FORBIDDEN}
+ # Send CSR request from ReadOnly user.
+ readonly_user TestPwd123 ${False} ${True} ${HTTP_FORBIDDEN}
+
+ # Send CSR request from NoAccess user.
+ noaccess_user TestPwd123 ${False} ${True} ${HTTP_FORBIDDEN}
+
Get Root Certificate Using Different Privilege Users Roles
[Documentation] Get root certificate using different users.
[Tags] Get_Root_Certificate_Using_Different_Users
+ [Setup] Redfish Power On
[Template] Get Root Certificate
# username password force_create valid_csr valid_status_code
+ # Request root certificate from admin user.
admin_user TestPwd123 ${True} ${True} ${HTTP_OK}
+
+ # Request root certificate from operator user.
operator_user TestPwd123 ${False} ${True} ${HTTP_FORBIDDEN}
+ # Request root certificate from ReadOnly user.
+ readonly_user TestPwd123 ${False} ${True} ${HTTP_FORBIDDEN}
+
+ # Request root certificate from NoAccess user.
+ noaccess_user TestPwd123 ${False} ${True} ${HTTP_FORBIDDEN}
+
+
+Send CSR Request When VMI Is Off And Verify
+ [Documentation] Send CSR signing request to VMI when it is off and expect an error.
+ [Tags] Get_CSR_Request_When_VMI_Is_Off_And_verify
+ [Setup] Redfish Power Off
+ [Template] Get Certificate Signed By VMI
+
+ # username password force_create valid_csr valid_status_code
+ ${OPENBMC_USERNAME} ${OPENBMC_PASSWORD} ${True} ${True} ${HTTP_INTERNAL_SERVER_ERROR}
+
+ # Send CSR request from operator user.
+ operator_user TestPwd123 ${False} ${True} ${HTTP_INTERNAL_SERVER_ERROR}
+
+ # Send CSR request from ReadOnly user.
+ readonly_user TestPwd123 ${False} ${True} ${HTTP_INTERNAL_SERVER_ERROR}
+
+ # Send CSR request from NoAccess user.
+ noaccess_user TestPwd123 ${False} ${True} ${HTTP_INTERNAL_SERVER_ERROR}
+
*** Keywords ***
@@ -58,7 +99,7 @@
# Run openssl command to create a new private key and use that to generate a CSR string
# in server.csr file.
${output}= Run ${ssl_cmd} ${ssl_sub}
- ${csr}= OperatingSystem.Get File server.csr
+ ${csr}= OperatingSystem.Get File ${CSR_FILE}
[Return] ${csr}