Я работаю над OIOSAML с ADFS 2.0. Мне нужно, чтобы ответ IdP был подписан и зашифрован. Ниже я понимаю, как работает подпись и шифрование запросов и ответов SAML:
- SP подписывает запрос, используя собственный ключ сертификата (Key-1).
- IdP проверяет запрос, используя открытый ключ SP (Key-1)
- IdP подписывает ответ, используя собственный ключ сертификата (Key-2).
- IdP шифрует подтверждение ответа, используя ключ сертификата, предоставленный SP (Key-3).
- SP проверяет ответ, используя открытый ключ IdP (Key-2)
- SP расшифровывает утверждение ответа, используя свой собственный закрытый ключ (Ключ-3).
Если я оставлю Key-1 и Key-3 одинаковыми, все будет работать. Поскольку в моем хранилище ключей в OIOSAML есть только один ключ.
Но теперь я хочу использовать отдельные ключи для подписи запросов и шифрования ответов. Это терпит неудачу здесь.
- Поддерживает ли OIOSAML несколько ключей в хранилище ключей?
- Если да, то как он различает ключи подписи и шифрования?