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
- basenumberconverter.cs
- AuthenticationServiceManager.cs
- DebugTracing.cs
- RefreshPropertiesAttribute.cs
- UrlPropertyAttribute.cs
- BaseTemplatedMobileComponentEditor.cs
- XmlAttributes.cs
- LayoutManager.cs
- ConditionalAttribute.cs
- AspNetPartialTrustHelpers.cs
- DataGridRelationshipRow.cs
- SqlPersonalizationProvider.cs
- SplitterEvent.cs
- Vector3DKeyFrameCollection.cs
- EmissiveMaterial.cs
- InstanceStore.cs
- TraceListeners.cs
- FigureHelper.cs
- ObjectDataSourceStatusEventArgs.cs
- SpoolingTask.cs
- ISessionStateStore.cs
- EnvironmentPermission.cs
- XmlHierarchicalDataSourceView.cs
- DataServiceHostFactory.cs
- ColumnMapProcessor.cs
- ModelItemExtensions.cs
- DesigntimeLicenseContext.cs
- WebPartConnectionsDisconnectVerb.cs
- DiscoveryProxy.cs
- ExpressionBindingCollection.cs
- AuthenticationSection.cs
- SqlDataSourceStatusEventArgs.cs
- MemberMaps.cs
- OdbcError.cs
- Rectangle.cs
- DataSourceCache.cs
- StreamGeometry.cs
- ListViewContainer.cs
- ReferencedAssembly.cs
- TextEvent.cs
- WebException.cs
- MasterPageParser.cs
- CacheEntry.cs
- UrlPath.cs
- PeerCustomResolverBindingElement.cs
- WebMessageEncodingElement.cs
- MessageEncoderFactory.cs
- LockCookie.cs
- Selection.cs
- WebEvents.cs
- ToolboxItemWrapper.cs
- TransformProviderWrapper.cs
- InitializationEventAttribute.cs
- WebPartMovingEventArgs.cs
- SoapWriter.cs
- DiscreteKeyFrames.cs
- GeneralTransform3DGroup.cs
- WebPartDescriptionCollection.cs
- BaseTransportHeaders.cs
- NameNode.cs
- Point3DAnimationUsingKeyFrames.cs
- XPathArrayIterator.cs
- DbConnectionPoolGroupProviderInfo.cs
- HotSpot.cs
- RegexMatchCollection.cs
- __FastResourceComparer.cs
- SingleAnimationUsingKeyFrames.cs
- ThicknessConverter.cs
- RequestResizeEvent.cs
- FloaterParaClient.cs
- COSERVERINFO.cs
- CompilerGeneratedAttribute.cs
- ChangeTracker.cs
- LineBreak.cs
- ExceptionRoutedEventArgs.cs
- ChangeInterceptorAttribute.cs
- DbConnectionPoolGroup.cs
- OperatingSystem.cs
- SqlCommand.cs
- OpenFileDialog.cs
- AuthorizationBehavior.cs
- GeneralTransform3D.cs
- Transform3DCollection.cs
- PropertyPushdownHelper.cs
- TagPrefixInfo.cs
- NumericUpDownAcceleration.cs
- DispatcherTimer.cs
- SymDocumentType.cs
- ConstantCheck.cs
- ServiceModelExtensionCollectionElement.cs
- InputReferenceExpression.cs
- XmlRawWriterWrapper.cs
- ConfigXmlReader.cs
- KeyPressEvent.cs
- RTLAwareMessageBox.cs
- ViewGenerator.cs
- EventTrigger.cs
- ModulesEntry.cs
- WebPartsSection.cs
- AutoResizedEvent.cs