Я пытаюсь пройти проверку подлинности на основе API с использованием сертификатов.
У меня есть файл pfx, который мне нужно преобразовать в требуемые сертификаты.
Для создания публичного сертификата я использовалкоманда:
openssl pkcs12 -in ~/Downloads/file.pfx -nodes -clcerts -nokeys | openssl x509 -out public.crt
Этот публичный сертификат был загружен на стороне API.
Теперь со стороны клиента мне нужно подключиться к API с помощью curl
Итак, сначала я сгенерировал закрытый ключ с помощью команды:
openssl pkcs12 -in ~/Downloads/file.pfx -nodes -nocerts | openssl rsa -out private_new.key
А теперь я пытаюсь подключиться к API с помощью команды:
curl -I -k --key ./private_new.key --cert ./public.crt https://<API-END-POINT>/foo/bar
Но в ответ я получаю:
HTTP/1.1 401 Unauthorized
Date: Thu, 31 Jan 2019 00:24:43 GMT
Server: Foo
X-IDS-ID: 4E178F65-78F2-4CB9-B31A-8D6288F854C5
WWW-Authenticate: Basic realm=CPS Rest Services
X-message-code: MISSING_AUTHORIZATION_HEADER
Content-Type: text/html
Vary: X-CSP-STRIP
X-IDS-Node: idp15
X-IDS-Pool: green
X-IDS-Project: prod
X-IDS-Landscape: eu-nl-1
X-Content-Type-Options: nosniff
Strict-Transport-Security: max-age=31536000;includeSubDomains;preload
Cache-Control: private,no-cache,no-store
Что-то я пропустил?Я новичок в этом, поэтому я не уверен, что я мог пропустить.