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
- CompilerGlobalScopeAttribute.cs
- SerializationSectionGroup.cs
- ByteConverter.cs
- ServiceMetadataPublishingElement.cs
- ValueExpressions.cs
- ProfileModule.cs
- DataServiceRequestException.cs
- AxImporter.cs
- FontSourceCollection.cs
- CursorConverter.cs
- SortedSetDebugView.cs
- RuntimeIdentifierPropertyAttribute.cs
- UnregisterInfo.cs
- TaskFactory.cs
- Suspend.cs
- ProcessHostConfigUtils.cs
- ReadWriteSpinLock.cs
- objectresult_tresulttype.cs
- FileDialog.cs
- CachedRequestParams.cs
- Vector3DValueSerializer.cs
- MemberPath.cs
- HttpRequest.cs
- RemotingService.cs
- LinqDataSourceHelper.cs
- ActivityXRefPropertyEditor.cs
- TemplateParser.cs
- DnsCache.cs
- OletxCommittableTransaction.cs
- TableLayout.cs
- FileReservationCollection.cs
- Int32AnimationBase.cs
- DataSourceView.cs
- ClientSettingsSection.cs
- DesignerRegion.cs
- _ReceiveMessageOverlappedAsyncResult.cs
- Error.cs
- ProfileProvider.cs
- SqlFlattener.cs
- CookielessHelper.cs
- AsyncOperation.cs
- SecurityException.cs
- XMLUtil.cs
- NativeMethods.cs
- safex509handles.cs
- DoubleAnimationClockResource.cs
- MetadataCache.cs
- WebPartZone.cs
- NetDispatcherFaultException.cs
- MailDefinition.cs
- Separator.cs
- ToolBarButtonClickEvent.cs
- StylusPointPropertyInfoDefaults.cs
- GeometryHitTestResult.cs
- infer.cs
- BrowserCapabilitiesFactoryBase.cs
- Roles.cs
- TypeConverter.cs
- EntitySet.cs
- InternalException.cs
- FormatVersion.cs
- PersonalizableAttribute.cs
- FloaterParagraph.cs
- ArgumentDesigner.xaml.cs
- CodeGenerator.cs
- CounterCreationData.cs
- ContentPathSegment.cs
- ComEventsSink.cs
- XmlLangPropertyAttribute.cs
- AppDomainGrammarProxy.cs
- ApplyHostConfigurationBehavior.cs
- SafeRegistryHandle.cs
- BaseCollection.cs
- FixedDSBuilder.cs
- ProcessModelSection.cs
- TemplateGroupCollection.cs
- MessagePartProtectionMode.cs
- NoResizeHandleGlyph.cs
- AccessText.cs
- XmlNodeChangedEventManager.cs
- EnumConverter.cs
- MembershipSection.cs
- EventlogProvider.cs
- ResourceReferenceExpressionConverter.cs
- WsiProfilesElement.cs
- FileNameEditor.cs
- GPPOINT.cs
- QuaternionAnimationBase.cs
- TextDecorationCollection.cs
- WinFormsComponentEditor.cs
- ButtonChrome.cs
- OperandQuery.cs
- QilPatternVisitor.cs
- ObjectHandle.cs
- PointAnimationBase.cs
- ProgressBarBrushConverter.cs
- PerspectiveCamera.cs
- MetadataPropertyvalue.cs
- TextWriterEngine.cs
- RtfToXamlReader.cs