protected override bool CanReadTokenCore(XmlReader reader) { if (SimpleWebSecurityTokenSerializer.IsSimpleWebSecurityToken(reader)) { return(true); } return(this.innerSerializer.CanReadToken(reader)); }
protected override SecurityToken ReadTokenCore(XmlReader reader, SecurityTokenResolver tokenResolver) { if (!SimpleWebSecurityTokenSerializer.IsSimpleWebSecurityToken(reader)) { return(this.innerSerializer.ReadToken(reader, tokenResolver)); } XmlDictionaryReader xmlDictionaryReader = XmlDictionaryReader.CreateDictionaryReader(reader); string attribute = xmlDictionaryReader.GetAttribute("Id", "http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd"); string str = xmlDictionaryReader.GetAttribute("EncodingType", null); if (str != null && !(str == "http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-soap-message-security-1.0#Base64Binary")) { throw new NotSupportedException(SRClient.UnsupportedEncodingType); } return(SimpleWebSecurityTokenSerializer.ReadBinaryCore(attribute, xmlDictionaryReader.ReadElementContentAsBase64())); }