Итак, я внедряю SSO поверх SAML2.0 для нашего приложения.Мы используем saml2-js на нашей стороне, и мы выполняем SSO, инициированную SP.
Реализация готова, и она работает, однако есть несколько частей, которые я изо всех сил пытаюсь обернуть.
- saml2-js требует от вас предоставить закрытый ключ и сертификат для экземпляра ServiceProvider -> https://www.npmjs.com/package/saml2-js#serviceprovideroptions Я не понимаю, для чего они используются, и saml2-js donНе предоставляйте сколько-нибудь значимого описания о них.Я попытался выяснить это с точки зрения SAML, но до сих пор не знаю.
- Как IdP, Okta является целью, и после настройки SAML в Okta Okta предоставляет свой сертификат.Теперь я понимаю эту часть, потому что Okta подпишет Ответ, и с нашей стороны SP использует этот сертификат, чтобы гарантировать, что Утверждение пришло от / доверенной стороны.Но как Okta удостоверяется, что запрос поступил от доверенной стороны?Я думал, что сертификат saml2-js, требуемый от нас, будет использоваться для этого, но, как оказалось, это предположение было ложным, потому что Okta никак не получает наш сертификат
- При настройке SAML в Okta ( okta guide ) в пункте 6 требуется, чтобы вы заполнили URI аудитории, который по умолчанию является SP entity_id.Но это может быть произвольное значение, верно?Для чего это используется и почему это обязательно?