Иницииран SAMLv2 SP: Един доставчик на услуги и множество доставчици на самоличност

Трябва да използвам един доставчик на услуги с множество доставчици на идентичност (idps), всеки idp е свързан към sp чрез използване на поддомейн, т.е. http://subdomain1.mysite.com се свързва с idp1, http://subdomain2.mysite.com се свързва с idp2 и т.н. тогава моят URL адрес на услугата Assertion Consumer Service изглежда така https://mysite.com/SAML/AssertionConsumerService.aspx.

Проблемът е, че трябва да знам от какъв idp идва отговорът в кода AssertionConsumerService.aspx, за да мога да заредя правилния сертификат. Опитах издателя, местоназначението на отговора и други средства без успех.

Някой знае ли добър начин за разграничаване на idps от отговора и/или най-добрите практики? Или има стандартен начин да направите това?

Използвам http://www.componentspace.com/Products/SAMLv20.aspx


person ctb    schedule 15.12.2010    source източник


Отговори (2)


В нашата система имаме обект, който представлява клиента (наричаме го „обслужващ домейн“) и изискваме клиентът да идентифицира този обект по име или като стойност на елемента Issuer, или като стойност на атрибута Issuer SPProvidedID. Конфигурацията на SAML от наша страна (SP) е свързана с този обект на „обслужващ домейн“, включително, например, сертификат за публичен ключ за проверка на техния цифров подпис.

Бих казал, че използването на стойността Issuer е по-подходящо, отколкото да се опитвате да изключите поддомейни.

person JST    schedule 16.12.2010

Както сте забелязали, ако имате един и същ ACS URL за всички IDP, тогава Дестинацията винаги ще бъде една и съща в твърдението.

Всяко IDP трябва (трябва?) да има свой собствен уникален Издател най-малкото, ако всеки от тях също има собствен публичен сертификат, с който подписва. Според моя опит PingFederate и други сървъри гарантират, че зарежда правилната конфигурационна информация при валидиране на отговор. Не съм сигурен защо Издателят не би работил за вас и в тази ситуация.

Можете да попаднете в ситуации, в които „различни“ IDP от една и съща компания може да ви изпращат отговори с един и същи издател и различни DSIG сертификати и AttributeStatements, но това не трябва да се случва в повечето случаи.

HTH Иън

person Ian    schedule 15.12.2010
comment
Здравейте, благодаря за отговора. Бих могъл да използвам издателя на idp, т.е. бита idp1 в subdomain.idp1.com и да получа сертификата въз основа на това, но изглежда като поправка? Бихте ли препоръчали начина на емитента? Прочетох, че можете да използвате файла с метаданни от idp, но не мисля, че е свързан с отговор (твърдение). Основната причина за използването на един и същ URL адрес на ACS беше, за да не се налага да купувате SSL за всеки sp поддомейн плюс дублирания код. - person ctb; 15.12.2010
comment
Съгласен съм с JST по-долу. Елементът Issuer трябва да присъства в съобщението (съгласно спецификацията) и е част от подписано съобщение (отговор или твърдение) IIRC. Трябва да разчитате на това. - person Ian; 17.12.2010