WSO2 IS — поставщик внешних удостоверений SAML — как использовать конкретный ключ/сертификат

#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 этого поставщика требует использования отдельных ключей: первый для подписи запроса, второй для шифрования утверждений. Как указать отдельный ключ/сертификат, который следует использовать для шифрования утверждений?