#wso2 #saml-2.0 #wso2is
Вопрос:
Мне нужно использовать внешний поставщик удостоверений SAML с WSO2. Для этого я получил 2 ключа/сертификата (один для подписи, один для шифрования). Я создал хранилища ключей с этими ключами/сертификатами.
Моя проблема в том, что:
Как указать, что эти сертификаты должны использоваться при подписании/шифровании запросов к внешнему поставщику удостоверений?
Я «проверил» Enable Authentication Request Signing
, но не вижу способа указать на конкретный ключ.
Ответ №1:
Похоже, вы используете Wso2 в качестве поставщика услуг SAML. У вас есть внешний IDP. По умолчанию на сервере идентификации подпись запроса выполняется с помощью закрытого ключа в хранилище ключей по умолчанию. Вы можете экспортировать его сертификат следующим образом
keytool -экспорт -хранилище ключей wso2carbon.jks -псевдоним wso2carbon -файл wso2carbon.crt
openssl x509 -информирует о вводе wso2carbon.crt -выводе wso2carbon.pem
Этот сертификат должен быть предоставлен IdP, чтобы он мог подтвердить подпись.
Если вам нужен пользовательский ключ для подписи, вам может потребоваться создать новое хранилище ключей и настроить его в качестве основного хранилища ключей на сервере идентификации wso2.
Комментарии:
1. Я получил эти ключи/сертификаты от поставщика (эта установка предназначена для утверждения концепции). Один из сертификатов есть
X509v3 Key Usage: Digital Signature
, второй уX509v3 Key Usage: Key Agreement
этого поставщика требует использования отдельных ключей: первый для подписи запроса, второй для шифрования утверждений. Как указать отдельный ключ/сертификат, который следует использовать для шифрования утверждений?