Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / cdf / src / WCF / IdentityModel / System / IdentityModel / EnvelopedSignatureTransform.cs / 1305376 / EnvelopedSignatureTransform.cs
//------------------------------------------------------------ // Copyright (c) Microsoft Corporation. All rights reserved. //----------------------------------------------------------- namespace System.IdentityModel { using System.Xml; using System.Security.Cryptography; sealed class EnvelopedSignatureTransform : Transform { string prefix = XmlSignatureStrings.Prefix; public EnvelopedSignatureTransform() { } public override string Algorithm { get { return XD.XmlSignatureDictionary.EnvelopedSignature.Value; } } public override object Process(object input, SignatureResourcePool resourcePool, DictionaryManager dictionaryManager) { XmlTokenStream tokenStream = input as XmlTokenStream; if (tokenStream != null) { tokenStream.SetElementExclusion(XmlSignatureStrings.Signature, XmlSignatureStrings.Namespace); return tokenStream; } throw DiagnosticUtility.ExceptionUtility.ThrowHelperError(new NotSupportedException(SR.GetString(SR.UnsupportedInputTypeForTransform, input.GetType()))); } // this transform is not allowed as the last one in a chain public override byte[] ProcessAndDigest(object input, SignatureResourcePool resourcePool, string digestAlgorithm, DictionaryManager dictionaryManager) { throw DiagnosticUtility.ExceptionUtility.ThrowHelperError(new NotSupportedException(SR.GetString(SR.UnsupportedLastTransform))); } public override void ReadFrom(XmlDictionaryReader reader, DictionaryManager dictionaryManager) { reader.MoveToContent(); string algorithm = XmlHelper.ReadEmptyElementAndRequiredAttribute(reader, dictionaryManager.XmlSignatureDictionary.Transform, dictionaryManager.XmlSignatureDictionary.Namespace, dictionaryManager.XmlSignatureDictionary.Algorithm, out this.prefix); if (algorithm != this.Algorithm) { throw DiagnosticUtility.ExceptionUtility.ThrowHelperError(new CryptographicException(SR.GetString(SR.AlgorithmMismatchForTransform))); } } public override void WriteTo(XmlDictionaryWriter writer, DictionaryManager dictionaryManager) { writer.WriteStartElement(this.prefix, dictionaryManager.XmlSignatureDictionary.Transform, dictionaryManager.XmlSignatureDictionary.Namespace); writer.WriteAttributeString(dictionaryManager.XmlSignatureDictionary.Algorithm, null, this.Algorithm); writer.WriteEndElement(); // Transform } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. //------------------------------------------------------------ // Copyright (c) Microsoft Corporation. All rights reserved. //----------------------------------------------------------- namespace System.IdentityModel { using System.Xml; using System.Security.Cryptography; sealed class EnvelopedSignatureTransform : Transform { string prefix = XmlSignatureStrings.Prefix; public EnvelopedSignatureTransform() { } public override string Algorithm { get { return XD.XmlSignatureDictionary.EnvelopedSignature.Value; } } public override object Process(object input, SignatureResourcePool resourcePool, DictionaryManager dictionaryManager) { XmlTokenStream tokenStream = input as XmlTokenStream; if (tokenStream != null) { tokenStream.SetElementExclusion(XmlSignatureStrings.Signature, XmlSignatureStrings.Namespace); return tokenStream; } throw DiagnosticUtility.ExceptionUtility.ThrowHelperError(new NotSupportedException(SR.GetString(SR.UnsupportedInputTypeForTransform, input.GetType()))); } // this transform is not allowed as the last one in a chain public override byte[] ProcessAndDigest(object input, SignatureResourcePool resourcePool, string digestAlgorithm, DictionaryManager dictionaryManager) { throw DiagnosticUtility.ExceptionUtility.ThrowHelperError(new NotSupportedException(SR.GetString(SR.UnsupportedLastTransform))); } public override void ReadFrom(XmlDictionaryReader reader, DictionaryManager dictionaryManager) { reader.MoveToContent(); string algorithm = XmlHelper.ReadEmptyElementAndRequiredAttribute(reader, dictionaryManager.XmlSignatureDictionary.Transform, dictionaryManager.XmlSignatureDictionary.Namespace, dictionaryManager.XmlSignatureDictionary.Algorithm, out this.prefix); if (algorithm != this.Algorithm) { throw DiagnosticUtility.ExceptionUtility.ThrowHelperError(new CryptographicException(SR.GetString(SR.AlgorithmMismatchForTransform))); } } public override void WriteTo(XmlDictionaryWriter writer, DictionaryManager dictionaryManager) { writer.WriteStartElement(this.prefix, dictionaryManager.XmlSignatureDictionary.Transform, dictionaryManager.XmlSignatureDictionary.Namespace); writer.WriteAttributeString(dictionaryManager.XmlSignatureDictionary.Algorithm, null, this.Algorithm); writer.WriteEndElement(); // Transform } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- AppDomainUnloadedException.cs
- Visual3DCollection.cs
- DataGridItem.cs
- SmtpNetworkElement.cs
- RequestCacheManager.cs
- CheckedListBox.cs
- Timeline.cs
- ValidatingPropertiesEventArgs.cs
- ReliabilityContractAttribute.cs
- DocumentSequence.cs
- _Win32.cs
- DockingAttribute.cs
- ExeConfigurationFileMap.cs
- PlanCompilerUtil.cs
- MulticastNotSupportedException.cs
- DynamicUpdateCommand.cs
- ISessionStateStore.cs
- GACMembershipCondition.cs
- TrueReadOnlyCollection.cs
- EasingQuaternionKeyFrame.cs
- MaskedTextProvider.cs
- SyntaxCheck.cs
- TagMapInfo.cs
- Configuration.cs
- DesignerAutoFormat.cs
- SimpleTextLine.cs
- WebContext.cs
- TemplateBamlRecordReader.cs
- XPathQueryGenerator.cs
- SpeakProgressEventArgs.cs
- BindingMemberInfo.cs
- Viewport3DVisual.cs
- LicenseException.cs
- XsdDataContractImporter.cs
- Currency.cs
- EntitySet.cs
- CodeCatchClauseCollection.cs
- IncrementalHitTester.cs
- AssemblyResourceLoader.cs
- BindingsCollection.cs
- StringResourceManager.cs
- GACIdentityPermission.cs
- CacheAxisQuery.cs
- EventRouteFactory.cs
- KeyToListMap.cs
- ErrorEventArgs.cs
- Light.cs
- HitTestParameters3D.cs
- SecurityContext.cs
- columnmapfactory.cs
- ToolStripSplitStackLayout.cs
- UTF32Encoding.cs
- SiteMapNodeCollection.cs
- TimeIntervalCollection.cs
- DataRowExtensions.cs
- XmlEncoding.cs
- DataObject.cs
- Console.cs
- LogStore.cs
- ISCIIEncoding.cs
- EmptyQuery.cs
- ApplyHostConfigurationBehavior.cs
- ArcSegment.cs
- ValuePatternIdentifiers.cs
- TextAutomationPeer.cs
- VirtualPathUtility.cs
- CollectionMarkupSerializer.cs
- ServiceDiscoveryBehavior.cs
- TransformerInfoCollection.cs
- DesignColumn.cs
- MediaSystem.cs
- MetaModel.cs
- GenericAuthenticationEventArgs.cs
- PtsContext.cs
- CaseInsensitiveOrdinalStringComparer.cs
- XmlNamespaceMapping.cs
- SubstitutionList.cs
- WebPart.cs
- EdgeProfileValidation.cs
- DiscoveryExceptionDictionary.cs
- SafeCoTaskMem.cs
- IntegerValidatorAttribute.cs
- AuthorizationRule.cs
- ZipIOExtraFieldPaddingElement.cs
- CommandBindingCollection.cs
- NotImplementedException.cs
- TableCellAutomationPeer.cs
- ProcessThreadCollection.cs
- SoapObjectReader.cs
- CounterCreationData.cs
- BitmapFrameEncode.cs
- PrivilegedConfigurationManager.cs
- FileEnumerator.cs
- CompiledWorkflowDefinitionContext.cs
- AccessDataSource.cs
- FunctionQuery.cs
- TemplateKeyConverter.cs
- SqlWriter.cs
- SingleKeyFrameCollection.cs
- CmsInterop.cs