From 0a770a95c8c1137e0f6620bcc691f4c3e213259b Mon Sep 17 00:00:00 2001 From: "Zhang Rong(Jon)" Date: Wed, 26 Jun 2024 14:42:17 +0800 Subject: [PATCH] Add client cert to support mTLS Since mTLS is supported by the O2 IMS API service, test cases need to add the client certificates when requesting the API. This commit will add client certificates for all test cases. Test Case: PASS - Executed all test case with client cert, it as expected. Issue-ID: INF-450 Change-Id: Ie00899f9e28080601868f1e11bcd0fc8240d1dcf Signed-off-by: Zhang Rong(Jon) --- .../O2IMS_Compliance_Test/certs/client-cert.pem | 20 +++++++++ .../O2IMS_Compliance_Test/certs/client-key.pem | 27 +++++++++++++ .../O2IMS_Compliance_Test/certs/client.csr | 17 ++++++++ .../O2IMS_Compliance_Test/certs/client.pem | 47 ++++++++++++++++++++++ .../O2IMS_Compliance_Test/certs/smo-ca-cert.pem | 22 ++++++++++ .../O2IMS_Compliance_Test/certs/smo-ca-cert.srl | 1 + .../O2IMS_Compliance_Test/certs/smo-ca-key.pem | 27 +++++++++++++ ...es_native_API_Profile)_access_information.robot | 1 + ...ventory_with_O2ims_APIs_and_correct_token.robot | 1 + ...ion_and_succeeds_to_receive_notifications.robot | 1 + ...e_alarm_notification_and_query_alarm_list.robot | 1 + ...7.3.5_Verify_general_aspects_of_O2ims_API.robot | 1 + ...ending_O2ims_APIs_with_unsupported_method.robot | 1 + ...le_issuing_O2ims_APIs_with_incorrect_data.robot | 1 + ...e_while_issuing_APIs_with_incorrect_token.robot | 1 + ...hile_issuing_requests_with_incorrect_APIs.robot | 1 + test_scripts/O2IMS_Compliance_Test/readme.md | 33 +++++++++++++++ 17 files changed, 203 insertions(+) create mode 100644 test_scripts/O2IMS_Compliance_Test/certs/client-cert.pem create mode 100644 test_scripts/O2IMS_Compliance_Test/certs/client-key.pem create mode 100644 test_scripts/O2IMS_Compliance_Test/certs/client.csr create mode 100644 test_scripts/O2IMS_Compliance_Test/certs/client.pem create mode 100644 test_scripts/O2IMS_Compliance_Test/certs/smo-ca-cert.pem create mode 100644 test_scripts/O2IMS_Compliance_Test/certs/smo-ca-cert.srl create mode 100644 test_scripts/O2IMS_Compliance_Test/certs/smo-ca-key.pem diff --git a/test_scripts/O2IMS_Compliance_Test/certs/client-cert.pem b/test_scripts/O2IMS_Compliance_Test/certs/client-cert.pem new file mode 100644 index 0000000..847e68b --- /dev/null +++ b/test_scripts/O2IMS_Compliance_Test/certs/client-cert.pem @@ -0,0 +1,20 @@ +-----BEGIN CERTIFICATE----- +MIIDQzCCAisCFHMHF0VfK2129wyea7MUNT8rnDMKMA0GCSqGSIb3DQEBCwUAMGIx +GzAZBgNVBAMMEnd3dy5tb2Nrc2VydmVyLmNvbTETMBEGA1UECgwKTW9ja1NlcnZl +cjEPMA0GA1UEBwwGTG9uZG9uMRAwDgYDVQQIDAdFbmdsYW5kMQswCQYDVQQGEwJV +SzAeFw0yNDA2MjUwODQ0NDNaFw0yNTA2MjUwODQ0NDNaMFoxCzAJBgNVBAYTAkNO +MRMwEQYDVQQIDApTb21lLVN0YXRlMSEwHwYDVQQKDBhJbnRlcm5ldCBXaWRnaXRz +IFB0eSBMdGQxEzARBgNVBAMMCnNtby1jbGllbnQwggEiMA0GCSqGSIb3DQEBAQUA +A4IBDwAwggEKAoIBAQDge0sF/TOPOwlRtGXpK2jPHS84IDMg/E9cNbsio17xin1E +8GpqT5NiPZCFmUQV2J+AbUC7DdtDs4pgoIjhs+r8QuRNsW/YqdvPx0w3OjC+jFhq +uWk+ioBEe+nRIL7y1kFT97kmW1sLV2z6TAjLvGubQB1xSy1ztFjoCZThNzgx8btK +Pm/1xkbuXx2Yt3JDuJfErvYw8HDICI9EFePxhKZNrxG2FrsYVPvBS+EUFhf3rs2r +7xBe5z3ki00hnqCKgO/R0nMz6gUs6dZIL21D7hxhw2EQqrm+jpFW0EaHw5q9B7+/ +ffUAhgNntpHhZlJgIxdqStdi/DctbHRyzUVpZx4pAgMBAAEwDQYJKoZIhvcNAQEL +BQADggEBAMjCzaL5f1K0lWfF9mnpB4XTw3LtJnh1IrWPkDdz62jjelnLX62Z+ddT +lkRpKAFdvVJXs4flNXpVaxa2IF/WjwmIXbkeLbhN0onPKs6ciT58HbML5Ay3BqWI +3wXy812YN3p78KTjv1aml0lzCEalZpYNDpQtV73E5X7qsYBVmulkSMPW2L8DwkXT +nXLM80SH3Ebu6SwYWeC0gU/yunE8GVTvmRxomeMxZjb+oFvlGp+hYMHwmsFQmoKT +9bLA4AkEh5Whzg7lxtteaia95m2DTJQg2oIHRFR7wy0pckc3FoIh58iI6t9BmZGT +xAojM75bBvytSU00JZmV2PhwnBNOmCw= +-----END CERTIFICATE----- diff --git a/test_scripts/O2IMS_Compliance_Test/certs/client-key.pem b/test_scripts/O2IMS_Compliance_Test/certs/client-key.pem new file mode 100644 index 0000000..f324020 --- /dev/null +++ b/test_scripts/O2IMS_Compliance_Test/certs/client-key.pem @@ -0,0 +1,27 @@ +-----BEGIN RSA PRIVATE KEY----- +MIIEpAIBAAKCAQEA4HtLBf0zjzsJUbRl6Stozx0vOCAzIPxPXDW7IqNe8Yp9RPBq +ak+TYj2QhZlEFdifgG1Auw3bQ7OKYKCI4bPq/ELkTbFv2Knbz8dMNzowvoxYarlp +PoqARHvp0SC+8tZBU/e5JltbC1ds+kwIy7xrm0AdcUstc7RY6AmU4Tc4MfG7Sj5v +9cZG7l8dmLdyQ7iXxK72MPBwyAiPRBXj8YSmTa8Rtha7GFT7wUvhFBYX967Nq+8Q +Xuc95ItNIZ6gioDv0dJzM+oFLOnWSC9tQ+4cYcNhEKq5vo6RVtBGh8OavQe/v331 +AIYDZ7aR4WZSYCMXakrXYvw3LWx0cs1FaWceKQIDAQABAoIBAButF8LVRNYT4UJB +i48D2xgt8PRqg+M9OEuWFExg+AOvn2Iwge45gWJLVNYj31ESNBgRYDmvq6jdKeJf +6IBrPj17wcoSZkfAKWmkmLD2a6wSgZQm5+LeEJJg9KLj9qbZ45QGpr0j5kWvsa/q +T+tOf7XUYczmB+SMB6oUBFcAB92gRN5tkrpRrgIEULCwKNECowQJa6j0/zAy39Eg +DrmY7AeGi9VMGbQa+38NIMCemkW08yFCxXjlkAlS1UUZlavwO565yro9jlI9WoW5 +/BC81tL4y9x3+EHFQ/Tkcw6bdCYVESL7dY0X41lE4eUmBQ63S9S87HPh0IR4hZkz +nhMfoAECgYEA+YGVJ3brOIWOx2qZjJBpCqQGr5IQBbfSqRa9CIA9C7Sa/bpPFwMa +RQaFq0qOOhLh/871d4SoYzcrr8ULjFpeSRrx+s7D7FH9Age43IPqMQxPCkl8SDAk +X5WzosEJSrbVW7ItovYzj4Ag7UGuHreRNVdOFr27a0YAIT3qLkDTDEECgYEA5lL5 +2TpHyFX72M9LOEsG7sD12IqUHtvua+FPvLiDwBi+TOQ1rTN/KXwmBrbLc01AnH5/ +uGtikDGXa/AgrZzwOcHbm8CkDTPGZ6vKJvgAo1sK7zKHg39JD/mfLQ7CVg8HlHZb +M9xFw/aIG/EVqR3JT7JkorYJZtNdz9tgEmHvN+kCgYEAp/Y5yGVfl58hLNFwKJYW +gFlHPu3e51qF79okyxI5BiZAqEnBcEZgatMnLNZ1xFZt2V0jFaAyEwhS2nKVgZhc +HG6NMz/52J6g6br1EU2kW/xjQROTHK177vTCBvBYJvnJy365BhkjQJkKkW1Dn94H +XJc3NEvpXR+0eqxJd3WgHYECgYEA19zAiVTT3fCoHuT5DINUtgNm5lHKzLk3VShP +wQH1iN4nzIy9udxfu5O9V+GOADxQ59qu/Tq3n4i679CX7978TkVf+zOrDSyPMK6S +wb8BahhzwQbMdvOemDhNdL82Z82iPwRGKe6x/B1cJ0PmFx/xgp4hL1YIrbQ/YgWq +ns/mkbECgYANahaMoSYAA07nZvIoKPOyAZ+Q770oV6KKvv+bXA2dC8vmv2zL3NYC +IHJp5iNeUI1p+vln3osZS934tCSvb4VDOGLbDssTk12ezHfvcdz+NMoUz/XBemOI +lXTr23P5PfRi+ehfSKzvTPpF/WmZclhlHMm68FdZIVsliw3AY14bXw== +-----END RSA PRIVATE KEY----- diff --git a/test_scripts/O2IMS_Compliance_Test/certs/client.csr b/test_scripts/O2IMS_Compliance_Test/certs/client.csr new file mode 100644 index 0000000..95a020b --- /dev/null +++ b/test_scripts/O2IMS_Compliance_Test/certs/client.csr @@ -0,0 +1,17 @@ +-----BEGIN CERTIFICATE REQUEST----- +MIICnzCCAYcCAQAwWjELMAkGA1UEBhMCQ04xEzARBgNVBAgMClNvbWUtU3RhdGUx +ITAfBgNVBAoMGEludGVybmV0IFdpZGdpdHMgUHR5IEx0ZDETMBEGA1UEAwwKc21v +LWNsaWVudDCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAOB7SwX9M487 +CVG0ZekraM8dLzggMyD8T1w1uyKjXvGKfUTwampPk2I9kIWZRBXYn4BtQLsN20Oz +imCgiOGz6vxC5E2xb9ip28/HTDc6ML6MWGq5aT6KgER76dEgvvLWQVP3uSZbWwtX +bPpMCMu8a5tAHXFLLXO0WOgJlOE3ODHxu0o+b/XGRu5fHZi3ckO4l8Su9jDwcMgI +j0QV4/GEpk2vEbYWuxhU+8FL4RQWF/euzavvEF7nPeSLTSGeoIqA79HSczPqBSzp +1kgvbUPuHGHDYRCqub6OkVbQRofDmr0Hv7999QCGA2e2keFmUmAjF2pK12L8Ny1s +dHLNRWlnHikCAwEAAaAAMA0GCSqGSIb3DQEBCwUAA4IBAQAFMbKdnedNw3KCwiUS +ry8XwrByZFECpAer38iw9pGuZCGu2+n5PVEko4R4L1y5S90X6IgR7rbh35w2duZ9 +AxSDrFp/SwWq0l1GAD5xkyJY/xf3Dq86IBqn/Mh5b2wny7sMAYgAR3JiPbOYJC8d +/1HAmD18i6HhKVPHzPmtpGhb/1dmA7UJ81vw42YYQbqXysMKMo8PFe4uhAXejTP1 +l5zRhdbqMsB5wi1FsS6QF1h4XUr2goLgNM7BPLyi1nIRGs0ngpPm2tCOp+0PNGNA +a41ptv2bX8kFfM1pIlsXpyDyTHrR5DfS8KGOeOjbt/iJBxyxsLZimsTH2PbBaTtB +02B/ +-----END CERTIFICATE REQUEST----- diff --git a/test_scripts/O2IMS_Compliance_Test/certs/client.pem b/test_scripts/O2IMS_Compliance_Test/certs/client.pem new file mode 100644 index 0000000..350a7c9 --- /dev/null +++ b/test_scripts/O2IMS_Compliance_Test/certs/client.pem @@ -0,0 +1,47 @@ +-----BEGIN CERTIFICATE----- +MIIDQzCCAisCFHMHF0VfK2129wyea7MUNT8rnDMKMA0GCSqGSIb3DQEBCwUAMGIx +GzAZBgNVBAMMEnd3dy5tb2Nrc2VydmVyLmNvbTETMBEGA1UECgwKTW9ja1NlcnZl +cjEPMA0GA1UEBwwGTG9uZG9uMRAwDgYDVQQIDAdFbmdsYW5kMQswCQYDVQQGEwJV +SzAeFw0yNDA2MjUwODQ0NDNaFw0yNTA2MjUwODQ0NDNaMFoxCzAJBgNVBAYTAkNO +MRMwEQYDVQQIDApTb21lLVN0YXRlMSEwHwYDVQQKDBhJbnRlcm5ldCBXaWRnaXRz +IFB0eSBMdGQxEzARBgNVBAMMCnNtby1jbGllbnQwggEiMA0GCSqGSIb3DQEBAQUA +A4IBDwAwggEKAoIBAQDge0sF/TOPOwlRtGXpK2jPHS84IDMg/E9cNbsio17xin1E +8GpqT5NiPZCFmUQV2J+AbUC7DdtDs4pgoIjhs+r8QuRNsW/YqdvPx0w3OjC+jFhq +uWk+ioBEe+nRIL7y1kFT97kmW1sLV2z6TAjLvGubQB1xSy1ztFjoCZThNzgx8btK +Pm/1xkbuXx2Yt3JDuJfErvYw8HDICI9EFePxhKZNrxG2FrsYVPvBS+EUFhf3rs2r +7xBe5z3ki00hnqCKgO/R0nMz6gUs6dZIL21D7hxhw2EQqrm+jpFW0EaHw5q9B7+/ +ffUAhgNntpHhZlJgIxdqStdi/DctbHRyzUVpZx4pAgMBAAEwDQYJKoZIhvcNAQEL +BQADggEBAMjCzaL5f1K0lWfF9mnpB4XTw3LtJnh1IrWPkDdz62jjelnLX62Z+ddT +lkRpKAFdvVJXs4flNXpVaxa2IF/WjwmIXbkeLbhN0onPKs6ciT58HbML5Ay3BqWI +3wXy812YN3p78KTjv1aml0lzCEalZpYNDpQtV73E5X7qsYBVmulkSMPW2L8DwkXT +nXLM80SH3Ebu6SwYWeC0gU/yunE8GVTvmRxomeMxZjb+oFvlGp+hYMHwmsFQmoKT +9bLA4AkEh5Whzg7lxtteaia95m2DTJQg2oIHRFR7wy0pckc3FoIh58iI6t9BmZGT +xAojM75bBvytSU00JZmV2PhwnBNOmCw= +-----END CERTIFICATE----- +-----BEGIN RSA PRIVATE KEY----- +MIIEpAIBAAKCAQEA4HtLBf0zjzsJUbRl6Stozx0vOCAzIPxPXDW7IqNe8Yp9RPBq +ak+TYj2QhZlEFdifgG1Auw3bQ7OKYKCI4bPq/ELkTbFv2Knbz8dMNzowvoxYarlp +PoqARHvp0SC+8tZBU/e5JltbC1ds+kwIy7xrm0AdcUstc7RY6AmU4Tc4MfG7Sj5v +9cZG7l8dmLdyQ7iXxK72MPBwyAiPRBXj8YSmTa8Rtha7GFT7wUvhFBYX967Nq+8Q +Xuc95ItNIZ6gioDv0dJzM+oFLOnWSC9tQ+4cYcNhEKq5vo6RVtBGh8OavQe/v331 +AIYDZ7aR4WZSYCMXakrXYvw3LWx0cs1FaWceKQIDAQABAoIBAButF8LVRNYT4UJB +i48D2xgt8PRqg+M9OEuWFExg+AOvn2Iwge45gWJLVNYj31ESNBgRYDmvq6jdKeJf +6IBrPj17wcoSZkfAKWmkmLD2a6wSgZQm5+LeEJJg9KLj9qbZ45QGpr0j5kWvsa/q +T+tOf7XUYczmB+SMB6oUBFcAB92gRN5tkrpRrgIEULCwKNECowQJa6j0/zAy39Eg +DrmY7AeGi9VMGbQa+38NIMCemkW08yFCxXjlkAlS1UUZlavwO565yro9jlI9WoW5 +/BC81tL4y9x3+EHFQ/Tkcw6bdCYVESL7dY0X41lE4eUmBQ63S9S87HPh0IR4hZkz +nhMfoAECgYEA+YGVJ3brOIWOx2qZjJBpCqQGr5IQBbfSqRa9CIA9C7Sa/bpPFwMa +RQaFq0qOOhLh/871d4SoYzcrr8ULjFpeSRrx+s7D7FH9Age43IPqMQxPCkl8SDAk +X5WzosEJSrbVW7ItovYzj4Ag7UGuHreRNVdOFr27a0YAIT3qLkDTDEECgYEA5lL5 +2TpHyFX72M9LOEsG7sD12IqUHtvua+FPvLiDwBi+TOQ1rTN/KXwmBrbLc01AnH5/ +uGtikDGXa/AgrZzwOcHbm8CkDTPGZ6vKJvgAo1sK7zKHg39JD/mfLQ7CVg8HlHZb +M9xFw/aIG/EVqR3JT7JkorYJZtNdz9tgEmHvN+kCgYEAp/Y5yGVfl58hLNFwKJYW +gFlHPu3e51qF79okyxI5BiZAqEnBcEZgatMnLNZ1xFZt2V0jFaAyEwhS2nKVgZhc +HG6NMz/52J6g6br1EU2kW/xjQROTHK177vTCBvBYJvnJy365BhkjQJkKkW1Dn94H +XJc3NEvpXR+0eqxJd3WgHYECgYEA19zAiVTT3fCoHuT5DINUtgNm5lHKzLk3VShP +wQH1iN4nzIy9udxfu5O9V+GOADxQ59qu/Tq3n4i679CX7978TkVf+zOrDSyPMK6S +wb8BahhzwQbMdvOemDhNdL82Z82iPwRGKe6x/B1cJ0PmFx/xgp4hL1YIrbQ/YgWq +ns/mkbECgYANahaMoSYAA07nZvIoKPOyAZ+Q770oV6KKvv+bXA2dC8vmv2zL3NYC +IHJp5iNeUI1p+vln3osZS934tCSvb4VDOGLbDssTk12ezHfvcdz+NMoUz/XBemOI +lXTr23P5PfRi+ehfSKzvTPpF/WmZclhlHMm68FdZIVsliw3AY14bXw== +-----END RSA PRIVATE KEY----- diff --git a/test_scripts/O2IMS_Compliance_Test/certs/smo-ca-cert.pem b/test_scripts/O2IMS_Compliance_Test/certs/smo-ca-cert.pem new file mode 100644 index 0000000..33a8b28 --- /dev/null +++ b/test_scripts/O2IMS_Compliance_Test/certs/smo-ca-cert.pem @@ -0,0 +1,22 @@ +-----BEGIN CERTIFICATE----- +MIIDqDCCApCgAwIBAgIEPhwe6TANBgkqhkiG9w0BAQsFADBiMRswGQYDVQQDDBJ3 +d3cubW9ja3NlcnZlci5jb20xEzARBgNVBAoMCk1vY2tTZXJ2ZXIxDzANBgNVBAcM +BkxvbmRvbjEQMA4GA1UECAwHRW5nbGFuZDELMAkGA1UEBhMCVUswIBcNMTYwNjIw +MTYzNDE0WhgPMjExNzA1MjcxNjM0MTRaMGIxGzAZBgNVBAMMEnd3dy5tb2Nrc2Vy +dmVyLmNvbTETMBEGA1UECgwKTW9ja1NlcnZlcjEPMA0GA1UEBwwGTG9uZG9uMRAw +DgYDVQQIDAdFbmdsYW5kMQswCQYDVQQGEwJVSzCCASIwDQYJKoZIhvcNAQEBBQAD +ggEPADCCAQoCggEBAPGORrdkwTY1H1dvQPYaA+RpD+pSbsvHTtUSU6H7NQS2qu1p +sE6TEG2fE+Vb0QIXkeH+jjKzcfzHGCpIU/0qQCu4RVycrIW4CCdXjl+T3L4C0I3R +mIMciTig5qcAvY9P5bQAdWDkU36YGrCjGaX3QlndGxD9M974JdpVK4cqFyc6N4gA +Onys3uS8MMmSHTjTFAgR/WFeJiciQnal+Zy4ZF2x66CdjN+hP8ch2yH/CBwrSBc0 +ZeH2flbYGgkh3PwKEqATqhVa+mft4dCrvqBwGhBTnzEGWK/qrl9xB4mTs4GQ/Z5E +8rXzlvpKzVJbfDHfqVzgFw4fQFGV0XMLTKyvOX0CAwEAAaNkMGIwHQYDVR0OBBYE +FH3W3sL4XRDM/VnRayaSamVLISndMA8GA1UdEwEB/wQFMAMBAf8wCwYDVR0PBAQD +AgG2MCMGA1UdJQQcMBoGCCsGAQUFBwMBBggrBgEFBQcDAgYEVR0lADANBgkqhkiG +9w0BAQsFAAOCAQEAecfgKuMxCBe/NxVqoc4kzacf9rjgz2houvXdZU2UDBY3hCs4 +MBbM7U9Oi/3nAoU1zsA8Rg2nBwc76T8kSsfG1TK3iJkfGIOVjcwOoIjy3Z8zLM2V +YjYbOUyAQdO/s2uShAmzzjh9SV2NKtcNNdoE9e6udvwDV8s3NGMTUpY5d7BHYQqV +sqaPGlsKi8dN+gdLcRbtQo29bY8EYR5QJm7QJFDI1njODEnrUjjMvWw2yjFlje59 +j/7LBRe2wfNmjXFYm5GqWft10UJ7Ypb3XYoGwcDac+IUvrgmgTHD+E3klV3SUi8i +Gm5MBedhPkXrLWmwuoMJd7tzARRHHT6PBH/ZGw== +-----END CERTIFICATE----- diff --git a/test_scripts/O2IMS_Compliance_Test/certs/smo-ca-cert.srl b/test_scripts/O2IMS_Compliance_Test/certs/smo-ca-cert.srl new file mode 100644 index 0000000..f436216 --- /dev/null +++ b/test_scripts/O2IMS_Compliance_Test/certs/smo-ca-cert.srl @@ -0,0 +1 @@ +730717455F2B6D76F70C9E6BB314353F2B9C330A diff --git a/test_scripts/O2IMS_Compliance_Test/certs/smo-ca-key.pem b/test_scripts/O2IMS_Compliance_Test/certs/smo-ca-key.pem new file mode 100644 index 0000000..98cffbb --- /dev/null +++ b/test_scripts/O2IMS_Compliance_Test/certs/smo-ca-key.pem @@ -0,0 +1,27 @@ +-----BEGIN RSA PRIVATE KEY----- +MIIEogIBAAKCAQEA8Y5Gt2TBNjUfV29A9hoD5GkP6lJuy8dO1RJTofs1BLaq7Wmw +TpMQbZ8T5VvRAheR4f6OMrNx/McYKkhT/SpAK7hFXJyshbgIJ1eOX5PcvgLQjdGY +gxyJOKDmpwC9j0/ltAB1YORTfpgasKMZpfdCWd0bEP0z3vgl2lUrhyoXJzo3iAA6 +fKze5LwwyZIdONMUCBH9YV4mJyJCdqX5nLhkXbHroJ2M36E/xyHbIf8IHCtIFzRl +4fZ+VtgaCSHc/AoSoBOqFVr6Z+3h0Ku+oHAaEFOfMQZYr+quX3EHiZOzgZD9nkTy +tfOW+krNUlt8Md+pXOAXDh9AUZXRcwtMrK85fQIDAQABAoIBAAK+9EzXZ17fYbjT +ufBSQWMSUqz+POYyINJJQAwiV+ryzKSgQ/HQuCoW2doMniag7/aatzEaWxxdgwfQ +BKxnE42rrZYs7cUjX2xbEXJCswqx638BN/Odmm27XoPdfUooxVqzeqIcVlqlDgCe +CgeZ9PYijlE2H6XUOlHuD+2ca+D1Qc78C7A42b3KNqug5CrqDuaS1GlMUnrgE7Z4 +pDnH2cTPpXn3XpjdAqYG1WeMbcnn6ZBDWGli9zcoEjy+NtvpHXA9KK4v02aSg7mt +nPwG7AUjj5LucGByI2IuoCjcGk9ewzPhPLbnZOY/XF+gtf7cjhxx1TNtAtILWwMR +2omBgN0CgYEA+YOxmhO8pGjydoUjRvvpzDMzFncTHum5tpHDFnlVpEIsvEmyud9L +pe6N3Q2971gq38hXE36vmQoO6Q8PALM8JvRe2stWK/BVyp+AOeexBQaJWaboGowg +PgQ7wt/Q7JToEw/PiDskapeNQuv99mkPth/ZrvRwVwq/6NVBtNKv+WMCgYEA99Wf +1ZRkusdmmw1ClFQzOS6mNY+q+cVKyu66yZChydhe8Z7JpIgzaAH9rjocNou//Ql7 +2CZTZyXbnJhUSSua8bv+t3XUJ1Q63b2YkC9UMumiKpFUbfFx161Uw6MkTtZMoMzY +3NusiPGZPyZsFZD0ujJkVnyS/jf/z7qytJep558CgYB6INm3ft2g47V6CaTAw+Em +EBF7d4EmamR6VlJVF8Kxiap35uLSU9elOmS5xFYpZtBlhJwKcMHmeKPfs302bISO +1KHxGgHts89qRDPxI9TjjtV/ylBlXh0R/eR6eC68/g2x9tUv6zLh8Zg1H2nJSJdm +H6TfG8o48IwKnQdySIXV3QKBgB8M+ciVngU0xGs6vxO8dOp+KL7fMCm5CUThoi9s +2ohiforBPTxLAD3QugrhJvXCjpxSWtza+Goc+SXmg/Di8LfGuQQdVCZVTEbJ4Vp3 +Q5JZaULyEGTx8jR2d/9G6l6iRNmEsMsDDtvdgTjDRJlzHuZRN/cKBpSpSXiqSIeN +1PC7AoGACpexpVQOeO89Pe+Qdp7+GmHls7dtKZZEshDb9leuQ1aIGNJSjaTDYLbR +9PlJGZCdN4xUPJ+xGis8CoVcYb3INLR1zU7gBAhu7oU+Gi4wVAOCkzDRY7A60jOU +Z7zPOlOp6CKzZdFIqybKyM1/xYgXeAdNI98JyIPiMdZfl+OBp3k= +-----END RSA PRIVATE KEY----- diff --git a/test_scripts/O2IMS_Compliance_Test/o2ims_compliance/7.3.10_SMO_succeeds_to_get_O2dms_(in_Kubernetes_native_API_Profile)_access_information.robot b/test_scripts/O2IMS_Compliance_Test/o2ims_compliance/7.3.10_SMO_succeeds_to_get_O2dms_(in_Kubernetes_native_API_Profile)_access_information.robot index fc5da56..183d9f3 100644 --- a/test_scripts/O2IMS_Compliance_Test/o2ims_compliance/7.3.10_SMO_succeeds_to_get_O2dms_(in_Kubernetes_native_API_Profile)_access_information.robot +++ b/test_scripts/O2IMS_Compliance_Test/o2ims_compliance/7.3.10_SMO_succeeds_to_get_O2dms_(in_Kubernetes_native_API_Profile)_access_information.robot @@ -82,3 +82,4 @@ s3, query a deploymentManager detail Set REST Headers Set Headers {"accept": "application/json"} Set Headers {"Authorization": "Bearer ${SMO_TOKEN_DATA}"} + Set Client Cert ${CURDIR}/../certs/client.pem diff --git a/test_scripts/O2IMS_Compliance_Test/o2ims_compliance/7.3.2_SMO_succeeds_to_query_inventory_with_O2ims_APIs_and_correct_token.robot b/test_scripts/O2IMS_Compliance_Test/o2ims_compliance/7.3.2_SMO_succeeds_to_query_inventory_with_O2ims_APIs_and_correct_token.robot index 4058ef6..7f2336b 100644 --- a/test_scripts/O2IMS_Compliance_Test/o2ims_compliance/7.3.2_SMO_succeeds_to_query_inventory_with_O2ims_APIs_and_correct_token.robot +++ b/test_scripts/O2IMS_Compliance_Test/o2ims_compliance/7.3.2_SMO_succeeds_to_query_inventory_with_O2ims_APIs_and_correct_token.robot @@ -638,3 +638,4 @@ s18, query Resource detail of an ethernet port Set REST Headers Set Headers {"accept": "application/json"} Set Headers {"Authorization": "Bearer ${SMO_TOKEN_DATA}"} + Set Client Cert ${CURDIR}/../certs/client.pem diff --git a/test_scripts/O2IMS_Compliance_Test/o2ims_compliance/7.3.3_SMO_succeeds_to_subscribe_for_O2ims_inventory_changes_notification_and_succeeds_to_receive_notifications.robot b/test_scripts/O2IMS_Compliance_Test/o2ims_compliance/7.3.3_SMO_succeeds_to_subscribe_for_O2ims_inventory_changes_notification_and_succeeds_to_receive_notifications.robot index 17f665a..7d30530 100644 --- a/test_scripts/O2IMS_Compliance_Test/o2ims_compliance/7.3.3_SMO_succeeds_to_subscribe_for_O2ims_inventory_changes_notification_and_succeeds_to_receive_notifications.robot +++ b/test_scripts/O2IMS_Compliance_Test/o2ims_compliance/7.3.3_SMO_succeeds_to_subscribe_for_O2ims_inventory_changes_notification_and_succeeds_to_receive_notifications.robot @@ -198,6 +198,7 @@ s1, create a subscription Set REST Headers Set Headers {"accept": "application/json"} Set Headers {"Authorization": "Bearer ${SMO_TOKEN_DATA}"} + Set Client Cert ${CURDIR}/../certs/client.pem Clear Subscriptions Clear Expectations diff --git a/test_scripts/O2IMS_Compliance_Test/o2ims_compliance/7.3.4_SMO_succeeds_to_create_alarmSubscription_receive_alarm_notification_and_query_alarm_list.robot b/test_scripts/O2IMS_Compliance_Test/o2ims_compliance/7.3.4_SMO_succeeds_to_create_alarmSubscription_receive_alarm_notification_and_query_alarm_list.robot index 42a3364..78ab701 100644 --- a/test_scripts/O2IMS_Compliance_Test/o2ims_compliance/7.3.4_SMO_succeeds_to_create_alarmSubscription_receive_alarm_notification_and_query_alarm_list.robot +++ b/test_scripts/O2IMS_Compliance_Test/o2ims_compliance/7.3.4_SMO_succeeds_to_create_alarmSubscription_receive_alarm_notification_and_query_alarm_list.robot @@ -267,6 +267,7 @@ s1, create alarmSubscription Set REST Headers Set Headers {"accept": "application/json"} Set Headers {"Authorization": "Bearer ${SMO_TOKEN_DATA}"} + Set Client Cert ${CURDIR}/../certs/client.pem Clear Subscriptions Clear Expectations diff --git a/test_scripts/O2IMS_Compliance_Test/o2ims_compliance/7.3.5_Verify_general_aspects_of_O2ims_API.robot b/test_scripts/O2IMS_Compliance_Test/o2ims_compliance/7.3.5_Verify_general_aspects_of_O2ims_API.robot index 43f8b85..c9a53cb 100644 --- a/test_scripts/O2IMS_Compliance_Test/o2ims_compliance/7.3.5_Verify_general_aspects_of_O2ims_API.robot +++ b/test_scripts/O2IMS_Compliance_Test/o2ims_compliance/7.3.5_Verify_general_aspects_of_O2ims_API.robot @@ -172,3 +172,4 @@ s5, query Resources with attribute selector Set REST Headers Set Headers {"accept": "application/json"} Set Headers {"Authorization": "Bearer ${SMO_TOKEN_DATA}"} + Set Client Cert ${CURDIR}/../certs/client.pem diff --git a/test_scripts/O2IMS_Compliance_Test/o2ims_compliance/7.3.6_SMO_gets_405_while_sending_O2ims_APIs_with_unsupported_method.robot b/test_scripts/O2IMS_Compliance_Test/o2ims_compliance/7.3.6_SMO_gets_405_while_sending_O2ims_APIs_with_unsupported_method.robot index 8e303b8..202c086 100644 --- a/test_scripts/O2IMS_Compliance_Test/o2ims_compliance/7.3.6_SMO_gets_405_while_sending_O2ims_APIs_with_unsupported_method.robot +++ b/test_scripts/O2IMS_Compliance_Test/o2ims_compliance/7.3.6_SMO_gets_405_while_sending_O2ims_APIs_with_unsupported_method.robot @@ -129,3 +129,4 @@ Set REST Headers Set Headers {"accept": "application/json"} Set Headers {"Content-Type": "application/json"} Set Headers {"Authorization": "Bearer ${SMO_TOKEN_DATA}"} + Set Client Cert ${CURDIR}/../certs/client.pem diff --git a/test_scripts/O2IMS_Compliance_Test/o2ims_compliance/7.3.7_SMO_gets_400_405_while_issuing_O2ims_APIs_with_incorrect_data.robot b/test_scripts/O2IMS_Compliance_Test/o2ims_compliance/7.3.7_SMO_gets_400_405_while_issuing_O2ims_APIs_with_incorrect_data.robot index 747c6da..e36140c 100644 --- a/test_scripts/O2IMS_Compliance_Test/o2ims_compliance/7.3.7_SMO_gets_400_405_while_issuing_O2ims_APIs_with_incorrect_data.robot +++ b/test_scripts/O2IMS_Compliance_Test/o2ims_compliance/7.3.7_SMO_gets_400_405_while_issuing_O2ims_APIs_with_incorrect_data.robot @@ -130,3 +130,4 @@ Set REST Headers Set Headers {"accept": "application/json"} Set Headers {"Content-Type": "application/json"} Set Headers {"Authorization": "Bearer ${SMO_TOKEN_DATA}"} + Set Client Cert ${CURDIR}/../certs/client.pem diff --git a/test_scripts/O2IMS_Compliance_Test/o2ims_compliance/7.3.8_SMO_get_security_error_response_while_issuing_APIs_with_incorrect_token.robot b/test_scripts/O2IMS_Compliance_Test/o2ims_compliance/7.3.8_SMO_get_security_error_response_while_issuing_APIs_with_incorrect_token.robot index 331f74d..403f6fd 100644 --- a/test_scripts/O2IMS_Compliance_Test/o2ims_compliance/7.3.8_SMO_get_security_error_response_while_issuing_APIs_with_incorrect_token.robot +++ b/test_scripts/O2IMS_Compliance_Test/o2ims_compliance/7.3.8_SMO_get_security_error_response_while_issuing_APIs_with_incorrect_token.robot @@ -66,3 +66,4 @@ Set REST Headers Set Headers {"accept": "application/json"} Set Headers {"Content-Type": "application/json"} # Set Headers {"Authorization": "Bearer ${SMO_TOKEN_DATA}"} + Set Client Cert ${CURDIR}/../certs/client.pem diff --git a/test_scripts/O2IMS_Compliance_Test/o2ims_compliance/7.3.9_SMO_get_correct_response_while_issuing_requests_with_incorrect_APIs.robot b/test_scripts/O2IMS_Compliance_Test/o2ims_compliance/7.3.9_SMO_get_correct_response_while_issuing_requests_with_incorrect_APIs.robot index aa4fa65..f56c521 100644 --- a/test_scripts/O2IMS_Compliance_Test/o2ims_compliance/7.3.9_SMO_get_correct_response_while_issuing_requests_with_incorrect_APIs.robot +++ b/test_scripts/O2IMS_Compliance_Test/o2ims_compliance/7.3.9_SMO_get_correct_response_while_issuing_requests_with_incorrect_APIs.robot @@ -62,3 +62,4 @@ Set REST Headers Set Headers {"accept": "application/json"} Set Headers {"Content-Type": "application/json"} # Set Headers {"Authorization": "Bearer ${SMO_TOKEN_DATA}"} + Set Client Cert ${CURDIR}/../certs/client.pem diff --git a/test_scripts/O2IMS_Compliance_Test/readme.md b/test_scripts/O2IMS_Compliance_Test/readme.md index 9406850..b592fb4 100644 --- a/test_scripts/O2IMS_Compliance_Test/readme.md +++ b/test_scripts/O2IMS_Compliance_Test/readme.md @@ -76,6 +76,39 @@ For one example on local test env. And other test sample expectations are the same way. +### Prepare the client certificates for mTLS + +Since mTLS is supported by the O2 IMS API service, you need to add the client certificates when requesting the API. + +Here are the steps to generate client certificates using the MockServer CA certificate: + +* Generate Client Certificates: + +Follow these steps to generate client certificates using the MockServer CA certificate. + +```bash +cd certs + +# Get MockServer CA cert and key +wget -O smo-ca-cert.pem https://raw.githubusercontent.com/mock-server/mockserver/master/mockserver-core/src/main/resources/org/mockserver/socket/CertificateAuthorityCertificate.pem + +wget -O smo-ca-key.pem https://raw.githubusercontent.com/mock-server/mockserver/master/mockserver-core/src/main/resources/org/mockserver/socket/CertificateAuthorityPrivateKey.pem + +# Generate client CSR (Certificate Signing Request) and key +openssl genrsa -out client-key.pem 2048 +openssl req -new -key client-key.pem -out client.csr + +# Sign the Client CSR with MockServer's CA +openssl x509 -req -in client.csr -CA smo-ca-cert.pem -CAkey smo-ca-key.pem -CAcreateserial -out client-cert.pem -days 365 + +# Combine the client cert and private key to one file +cat client-cert.pem client-key.pem > client.pem +``` + +* Ensure Correct CA Certificate: + +Make sure you are using the MockServer CA certificate (smo_cert) when setting up the O2 application. + ### Test Configuration File Guide. The test_configs.yaml is the configuration file for the test script to get environment variables for issuing requests to O2 IMS service, to -- 2.16.6