SSO SAML token в SOAP web service

166
20 сентября 2017, 09:21

Господа, встал такой вопрос - имеется SSO SAML token примерно в таком виде -

<?xml version="1.0" encoding="UTF-8"?>
<saml:Assertion xmlns:saml="urn:oasis:names:tc:SAML:1.0:assertion" xmlns="urn:oasis:names:tc:SAML:1.0:assertion" xmlns:samlp="urn:oasis:names:tc:SAML:1.0:protocol" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" AssertionID="urn:uuid:85E26095377020BAEB1505728628338" IssueInstant="2017-09-18T09:57:07.0Z" Issuer="https://localhost/idp/services/Trust" MajorVersion="1" MinorVersion="1">
   <saml:Conditions NotBefore="2017-09-18T09:57:07.0Z" NotOnOrAfter="2017-09-18T17:57:07.0Z">
      <saml:AudienceRestrictionCondition>
         <saml:Audience>uri:org:eclipse:alf:sso:relyingparty:anonymous:anonymous:anonymous</saml:Audience>
      </saml:AudienceRestrictionCondition>
   </saml:Conditions>
   <saml:AuthenticationStatement AuthenticationInstant="2017-09-18T09:57:07.0Z" AuthenticationMethod="urn:oasis:names:tc:SAML:1.0:am:unspecified">
      <saml:Subject>
         <saml:NameIdentifier Format="urn:oasis:names:tc:SAML:1.1:nameid-format:unspecified">admin</saml:NameIdentifier>
         <saml:SubjectConfirmation>
            <saml:ConfirmationMethod>urn:oasis:names:tc:SAML:1.0:cm:bearer</saml:ConfirmationMethod>
         </saml:SubjectConfirmation>
      </saml:Subject>
   </saml:AuthenticationStatement>
   <saml:AttributeStatement>
      <saml:Subject>
         <saml:NameIdentifier Format="urn:oasis:names:tc:SAML:1.1:nameid-format:unspecified">admin</saml:NameIdentifier>
         <saml:SubjectConfirmation>
            <saml:ConfirmationMethod>urn:oasis:names:tc:SAML:1.0:cm:bearer</saml:ConfirmationMethod>
         </saml:SubjectConfirmation>
      </saml:Subject>
      <saml:Attribute AttributeName="IdentityStoreType" AttributeNamespace="http://www.eclipse.org/alf/sso/1.0/claims">
         <saml:AttributeValue>AE</saml:AttributeValue>
      </saml:Attribute>
      <saml:Attribute AttributeName="IdentityStoreURI" AttributeNamespace="http://www.eclipse.org/alf/sso/1.0/claims">
         <saml:AttributeValue>http://intel2:80/gsoap/gsoap_ssl.dll?sbminternalservices72</saml:AttributeValue>
      </saml:Attribute>
      <saml:Attribute AttributeName="UserNamespace" AttributeNamespace="http://schemas.serena.com/xml/ws/sbm/sso/claims">
         <saml:AttributeValue>00000</saml:AttributeValue>
      </saml:Attribute>
      <saml:Attribute AttributeName="TicketType" AttributeNamespace="http://www.eclipse.org/alf/sso/1.0/claims">
         <saml:AttributeValue>TGT</saml:AttributeValue>
      </saml:Attribute>
   </saml:AttributeStatement>
   <ds:Signature xmlns:ds="http://www.w3.org/2000/09/xmldsig#">
      <ds:SignedInfo>
         <ds:CanonicalizationMethod Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#" />
         <ds:SignatureMethod Algorithm="http://www.w3.org/2000/09/xmldsig#rsa-sha1" />
         <ds:Reference URI="#urn:uuid:85E26095377020BAEB1505728628338">
            <ds:Transforms>
               <ds:Transform Algorithm="http://www.w3.org/2000/09/xmldsig#enveloped-signature" />
               <ds:Transform Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#" />
            </ds:Transforms>
            <ds:DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1" />
            <ds:DigestValue>niH8/5DcGnp2lIabZwNPr3/95ck=</ds:DigestValue>
         </ds:Reference>
      </ds:SignedInfo>
      <ds:SignatureValue>L2DlZkdqsGXE2nvJEI/E7bIMPdQwM9BjEiXVr/4odNVAr5RRtQjPeKWBl10DcTb2+SSMo0U/FRKpPZfiEiaPBRBNudJ6ljohMfWevMP1CjlckLjyU09VNHCi7WYl+uT+p5VnkFodtOuf1LxT14DFpWh8v+4Fqxx/teKOMx0hmo0=</ds:SignatureValue>
      <ds:KeyInfo>
         <ds:KeyValue>
            <ds:RSAKeyValue>
               <ds:Modulus>voWuZOg30quFxikTAX3FIV0Mzvt2ZbcDIzFEGFF3dtNJx3Yog9ZP44ekI6UmiH4dwBKjkezazYvqQjqWPUBhc4yK+PriTWZmf7o9RkH3qlhMJg615/uYB/YmMWPWK0gaguvtFAVUuwIXp6RR84jaEeULSVULCAkGt8I0EanYM4k=</ds:Modulus>
               <ds:Exponent>AQAB</ds:Exponent>
            </ds:RSAKeyValue>
         </ds:KeyValue>
      </ds:KeyInfo>
   </ds:Signature>
</saml:Assertion>

Необходимо вызвать метод веб службы, используя данные авторизационные данные.WSDL службы имеется. Как реализовать это для клиента на C#?

READ ALSO
Сортировка строк в алфавитном порядке

Сортировка строк в алфавитном порядке

Есть свой List - как реализовать,чтобы слова были в алфавитном порядке от 1-ой буквы

470
Классы, наследование

Классы, наследование

Создал 2 классаОт одного наследовал другой

291
Передача объекта из JS скрипта на сервер ASP.NET.MVC 5

Передача объекта из JS скрипта на сервер ASP.NET.MVC 5

Академическая задача, есть модель People и временный репозиторий наполненный фейковыми даннымиПри передачи в браузер я сериализую в JSON модель...

253
Подсчет строк в datatable с условием

Подсчет строк в datatable с условием

Есть datatable, в нем несколько колонокОдна из них "Flag"

227