/// <summary> /// Reads the 'wresult' and returns the embeded security token. /// </summary> /// <returns>the 'SecurityToken'.</returns> public virtual string GetToken() { if (Wresult == null) { IdentityModelEventSource.Logger.WriteWarning(string.Format(CultureInfo.InvariantCulture, LogMessages.IDX10000, "wresult")); return(null); } using (StringReader sr = new StringReader(Wresult)) { XmlReader xmlReader = XmlReader.Create(sr); xmlReader.MoveToContent(); WSTrustResponseSerializer serializer = new WSTrust13ResponseSerializer(); if (serializer.CanRead(xmlReader)) { RequestSecurityTokenResponse response = serializer.ReadXml(xmlReader, new WSTrustSerializationContext()); return(response.RequestedSecurityToken.SecurityTokenXml.OuterXml); } serializer = new WSTrustFeb2005ResponseSerializer(); if (serializer.CanRead(xmlReader)) { RequestSecurityTokenResponse response = serializer.ReadXml(xmlReader, new WSTrustSerializationContext()); return(response.RequestedSecurityToken.SecurityTokenXml.OuterXml); } } return(null); }
/// <summary> /// Reads the 'wresult' and returns the embeded security token. /// </summary> /// <returns>the 'SecurityToken'.</returns> public virtual string GetToken() { if (Wresult == null) { return(null); } using (StringReader sr = new StringReader(Wresult)) { XmlReader xmlReader = XmlReader.Create(sr); xmlReader.MoveToContent(); WSTrustResponseSerializer serializer = new WSTrust13ResponseSerializer(); if (serializer.CanRead(xmlReader)) { RequestSecurityTokenResponse response = serializer.ReadXml(xmlReader, new WSTrustSerializationContext()); return(response.RequestedSecurityToken.SecurityTokenXml.OuterXml); } serializer = new WSTrustFeb2005ResponseSerializer(); if (serializer.CanRead(xmlReader)) { RequestSecurityTokenResponse response = serializer.ReadXml(xmlReader, new WSTrustSerializationContext()); return(response.RequestedSecurityToken.SecurityTokenXml.OuterXml); } } return(null); }